示例#1
0
void shutdownLibrary()
{
	closeAllGUIScreens();

	schedStop();

	aboutToCompileLibrary();

	TempoClock_stopAll();

	pthread_mutex_lock (&gLangMutex);

	closeAllCustomPorts();

	if (compiledOK) {
		VMGlobals *g = gMainVMGlobals;
		g->canCallOS = true;
		g->gc->RunAllFinalizers();
		g->canCallOS = false;
	}

	pyr_pool_runtime->FreeAll();

	compiledOK = false;

	pthread_mutex_unlock (&gLangMutex);
}
示例#2
0
void shutdownLibrary()
{
	closeAllGUIScreens();

	schedStop();

	runShutdown();

	TempoClock_stopAll();

	gLangMutex.lock();
	closeAllCustomPorts();

	if (compiledOK) {
		VMGlobals *g = gMainVMGlobals;
		g->canCallOS = true;
		g->gc->RunAllFinalizers();
		g->canCallOS = false;
	}

	pyr_pool_runtime->FreeAll();

	compiledOK = false;

	gLangMutex.unlock();

	SC_LanguageConfig::freeLibraryConfig();
}