Tcl package Thread source code

Artifact [b7570ded1e]
Login

Artifact b7570ded1ea3b1fbe7190af8317d68436c177c8b1479c3d6180f1f1e22ca0937:

Ticket change [b7570ded1e] - Ticket [c6057948e5] tsv commands break thread access rules for Tcl values status still Open with 3 other changes by dgp 2018-03-29 23:04:16.
D 2018-03-29T23:04:16.790
J icomment \r\nWith\sthat\sbackground\sinformation,\sand\susing\sa\s--enable-symbols=mem\r\nbuild\sof\sTcl,\srun\sthis\sdemo\sscript:\r\n\r\npackage\srequire\sThread\r\n\r\nproc\smyScript\smainTid\s{\r\n\s\s\s\spackage\srequire\sThread\r\n\s\s\s\sthread::send\s-async\s$mainTid\s[list\sputs\s"ThreadRunning\s=\s[tsv::get\ssharedArray\sThreadRunning]"]\r\n\s\s\s\stsv::set\ssharedArray\sThreadRunning\s1\r\n\s\s\s\sthread::send\s-async\s$mainTid\s[list\sputs\s"ThreadRunning\s=\s[tsv::get\ssharedArray\sThreadRunning]"]\r\n}\r\n\r\nproc\sinstallProc\s{tid\sprocName}\s{\r\n\s\s\s\sset\sprocBody\s[info\sbody\s$procName]\r\n\s\s\s\sset\sprocArgs\s[info\sargs\s$procName]\r\n\s\s\s\sthread::send\s$tid\s[list\sproc\s$procName\s$procArgs\s$procBody]\r\n}\r\n\r\ntsv::set\ssharedArray\sThreadRunning\s0\r\nset\s_threadHandle\s[thread::create]\r\ninstallProc\s$_threadHandle\smyScript\r\nthread::send\s-async\s$_threadHandle\s[list\smyScript\s[thread::id]]\r\n\r\nafter\s1000\r\n\r\nputs\s"\\t\sCompleted\stests"\r\n\r\n\r\nWith\sany\sluck,\sone\sof\sthose\sPanic\ssafeguards\swill\sbe\striggered.
J login dgp
J mimetype text/plain
K c6057948e5f884435ee35517008db0205f286a5e
U dgp
Z 7fa7ac775d445307fcb9fc38c6b5dcfd