Menu

#2252 dde servers can hang on exit

obsolete: 8.3
open
7
2003-03-22
2003-03-22
Pat Thoyts
No

If there is a badly behaved windows application running
on the system and a tcl interpreter that is a DDE
server attempts to exit - the interp may hang until
messages are processed in the remote application.

We can demonstrate this by starting tclsh and setting
the dde servername. This gives us a badly behaved
windows application - that is a toplevel window has
been created but we are not processing the message queue.

Now if we start another tclsh or wish and set the dde
servername and then exit - the interpreter will hang in
DdeExitProc during the call to DdeNameService() until
such time as the first interpreter processes it's
message queue.

Discussion