From: Cyan O. <cya...@gm...> - 2015-07-23 17:35:44
|
On Thu, Jul 23, 2015 at 7:23 PM, Jan Nijtmans <jan...@gm...> wrote: > 2015-07-23 5:39 GMT+02:00 Gustaf Neumann <ne...@wu...>: > > > > Am 15.07.15 um 09:29 schrieb Harald Oehlmann: > >> No, it worked perfectly, if I remember right. > > > > So, the preferred pattern is: if an application needs a notifier > > thread running after a fork, it should call Tcl_InitNotifier() > > after the fork (like in rivet in the ap_hook_child_init() callback) > > I think this has been discussed before. Prefered is that all > applications just can use fork() out of the box, while a > forked interpreter works the same as the original > interpreter. Since the vwait command expects events > to be handled, and for this events to work a notifier > thread is necessary, it means that any application > should simply assume that the notifier works, no > matter Tcl is compiled with or without threads. What is the performance impact of creating a notifier thread just to throw it away for the [exec] case? It seems that anything measurable would be a poor trade-off - slow down an extremely common case to enable an extremely rare case. Cyan |