diff --git a/config/stack_config.h b/config/stack_config.h index 51ae3cfb..5cbdecba 100644 --- a/config/stack_config.h +++ b/config/stack_config.h @@ -36,7 +36,7 @@ * 0 ==> server runs in multi-threaded mode (one thread for each connection and * one server background thread ) */ -#define CONFIG_MMS_SINGLE_THREADED 1 +#define CONFIG_MMS_SINGLE_THREADED 0 /* * Optimize stack for threadless operation - don't use semaphores diff --git a/src/mms/iso_server/iso_server.c b/src/mms/iso_server/iso_server.c index 577a95ee..d67f31c0 100644 --- a/src/mms/iso_server/iso_server.c +++ b/src/mms/iso_server/iso_server.c @@ -561,8 +561,11 @@ IsoServer_waitReady(IsoServer self, unsigned int timeoutMs) if (self->openClientConnections[i] != NULL) { if (IsoConnection_isRunning(self->openClientConnections[i])) { IsoConnection_addHandleSet(self->openClientConnections[i], handles); - } else { + } + else { +#if ((CONFIG_MMS_SINGLE_THREADED == 1) || (CONFIG_MMS_THREADLESS_STACK == 1)) IsoConnection_destroy(self->openClientConnections[i]); +#endif self->openClientConnections[i] = NULL; } }