Websites Navigation: Airbit | Shop | m-shell.net
Languages: EN | DE

Restrictions

Native functions in m must observe a few restrictions:
  • There is no way to call an m function from within a native function. It can only create m values and call C++ functions. For instance, if your module needs to call an m function as a callback, you must implement the callback mechanism in an m wrapper module calling your native module.
  • Native functions execute from within an active object (CActive::RunL() function). All m processes share the same thread. As a consequence, all other m processes must wait until a native function returns. Make sure your native function does not do lengthy computations, or does it in small chunks.
  • The m runtime system is not thread safe. If your native module creates its own thread, you must make sure only the m thread calls the runtime system, and provide appropriate synchronization.

© 2004-2010 airbit AG, CH-8008 Zürich
Document AB-M-NMI-869
mShell Home  > Documentation  > Manuals