The SIDL declaring calls to be nonblocking and/or oneway:
package foo version 0.2 { class Bar { nonblocking double runSimulation(in double x, inout y, out z); oneway void initSimulation(in string name, in int flags); } }
Notice that the nonblocking call may take any arguments, but only in arguments are allowed for the oneway call.
NOTE: As of Babel 0.11.0, calling a non-blocking function on a local object causes a segfault. It works for remote objects, but not for local objects. Be careful. (Oneway calls are OK though)