On Feb 15, 2009, at 9:49 AM, Ron Avriel wrote:

Hi,

Under Windows, FreeSWITCH consistently crashes with all default install setting after issuing the ‘shutdown’ command from console immediately after startup, without a single call handled. Note that on my servers, this only happens in ‘Release’ version, not in ‘Debug’.

The problem is due to “problematic” Windows thread handling.
I noticed that all FS threads are ‘detachable’ and not ‘joinable’. When an application with active detached threads terminates, a race condition can lead to the application crash, as shown in the sample application
at http://pastebin.freeswitch.org/7225 .

This is exactly what causes FS to crash as a result of the mod_event_socket detached runtime thread.

A temporary workaround is to change in switch_loadable_module_exec() the call to
switch_yield(1000000) with switch_thread_exit(thread, 0).

In my case it solved the crash, but theoretically it does not always solve the problem, because there is no guarantee that it will get called before the main thread reaches its termination code.

I think the only safe solution is to use ‘joinable’ threads. Is there a good reason they’re not used?

Note – this problem was reported to jira about a month ago http://jira.freeswitch.org/browse/MODEVENT-37 but it seems it was ignored.


The issue has not been ignored, it just has not been resolved yet. Please put these details on that bug, I'll take a look.

Mike

_______________________________________________
Freeswitch-dev mailing list
Freeswitch-dev@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
http://www.freeswitch.org

Reply via email to