IBM Support

What is the difference between using OXF::end() and OMOS::endApplication()?

Question & Answer


Question

What is the difference between using OXF::end() and OMOS::endApplication()?

Answer

OXF::end() cleans the framework related thread without terminating the application. the implementation cause the main thread loop to exit and therefore OXF::start() to return.  However the application is supposed to stay alive if non-framework related threads exist.  It was designed to enable load/unload of framework-dependent COM components that use the framework DLL version.  This is useful for embedded applications, which generally do not end.

OMOS::endApplication() is designed to force the termination off the entire application.  The implementation is RTOS dependent since it is implemented as part of the RTOS adapter.  Typically it will force the termination of the main thread (assuming that the RTOS cleans up memory allocated in the context of these threads) and therefore it usually does not exit OXF::start(), however this can be addressed by changing the adapter implementation.
1448AnswerProduct versionPartner ContentInternal ContentCategoryReference IDAuthor

[{"Product":{"code":"SSB2MU","label":"IBM Engineering Systems Design Rhapsody"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Component":"General Information","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"Version Independent","Edition":"","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]

Historical Number

10401

Product Synonym

Rational Rhapsody

Document Information

Modified date:
27 May 2022

UID

swg21323695