Set_int_handler non blocking?

I’m not sure if the GPIO interrupt handler (set_int_handler )is the same as arduino , does this need to be a non-blocking function.
I’m using a MQTT.pub call inside my handler so just checking if this is going to cause problems or is not recommended?
if not whats the best way to trigger another function inside a set_int_handler function?

AFAIK, an interrupt handler should be as short (in time) as possible.
mgos_invoke_cb invokes a callback in the main MGOS event loop.

Thanks for the reply, the pattern in arduino would be set a flag variable a check in loop but do mongoose have a loop? Or how would do this in mongoose?
Ie how would I trigger a a function which requires a longer process?