Menu

#1733 Tcl_AsyncMark doesn't awaken the Notifie

obsolete: 8.3.4
open-duplicate
5
2002-12-11
2002-01-10
Dave Thomas
No

Tcl Version: 8.3.4
OS :Unix platforms
Tcl_AsyncMark doesn't awaken the Notifier (see defect
#217934 )

This problem still exists on non-threaded versions of
Tcl. Tcl_AlertNotifier does nothing if TCL_THREADS is
not defined:

void
Tcl_AlertNotifier(clientData)
ClientData clientData;
{
#ifdef TCL_THREADS
ThreadSpecificData *tsdPtr = (ThreadSpecificData *)
clientData;
Tcl_MutexLock(&notifierMutex);
tsdPtr->eventReady = 1;
Tcl_ConditionNotify(&tsdPtr->waitCV);
Tcl_MutexUnlock(&notifierMutex);
#endif

}

So if Tcl is blocked in a select statement (as in a
socket event driven application), events posted to the
Tcl event queue via Tcl_AsyncMark don't get handled
until an unrelated event kicks Tcl out of the select
statement.

Discussion

  • David Gravereaux

    Logged In: YES
    user_id=7549

    Same as #502193.

     
  • Don Porter

    Don Porter - 2002-01-15
    • labels: --> 01. Notifier
    • assigned_to: nobody --> dgp
    • milestone: --> obsolete: 8.3.4
    • status: open --> closed-duplicate
     
  • David Gravereaux

    • status: closed-duplicate --> open-duplicate
     
  • Don Porter

    Don Porter - 2002-12-11

    Logged In: YES
    user_id=80530

    Passing to Notifier maintainer.

     
  • Don Porter

    Don Porter - 2002-12-11
    • assigned_to: dgp --> kennykb