<html>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<br>
<br>
<div class="moz-cite-prefix">Le 23/02/2016 09:00, Roman Haefeli a
écrit :<br>
</div>
<br>
<blockquote cite="mid:1456214401.4184.23.camel@nl-16900.ad.zhdk.ch"
type="cite">
<pre wrap="">
going to do when it dies? I'd love if Pd would provide some true
multi-threading (not like [pd~] which is tightly coupled to its parent).
Roman
</pre>
</blockquote>
<br>
<pre>That's a clever point I'm also sharing, but from informations grabbed in tcl documentation
that seem to imply a complete rewrite of the client:
<pre><span style="color: rgb(0, 0, 0); font-family: sans-serif; font-size: 14.4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; display: inline !important; float: none; background-color: rgb(255, 255, 255);">Some consolidated rules for embedding Tcl in a threaded application:</span></pre></pre>
<ul style="color: rgb(0, 0, 0); font-family: sans-serif; font-size:
14.4px; font-style: normal; font-variant: normal; font-weight:
normal; letter-spacing: normal; line-height: normal; orphans:
auto; text-align: start; text-indent: 0px; text-transform: none;
white-space: normal; widows: 1; word-spacing: 0px;
-webkit-text-stroke-width: 0px;">
<li>
<pre>You can<span class="Apple-converted-space"> </span><b>NEVER</b><span class="Apple-converted-space"> </span>use the same interpreter from more than one thread</pre>
</li>
<li>
<pre>If you only have one Tcl Interpreter:</pre>
</li>
<li>
<pre>You can use either Unthreaded or Threaded Tcl</pre>
</li>
<li>
<pre>No<span class="Apple-converted-space"> </span><i>Big Global Mutex</i><span class="Apple-converted-space"> </span><a href="http://wiki.tcl.tk/25243" style="text-decoration: none;">[</a>Big Global Mutex<a href="http://wiki.tcl.tk/25243" style="text-decoration: none;">]</a><span class="Apple-converted-space"> </span>is required for Unthreaded Tcl Build (Never required for Threaded Tcl build)</pre>
</li>
<li>
<pre>If you have Multiple Tcl Interpreters:</pre>
</li>
<li>
<pre>If you are using an Unthreaded Tcl<span class="Apple-converted-space"> </span><i>Big Global Mutex</i><span class="Apple-converted-space"> </span><a href="http://wiki.tcl.tk/25243" style="text-decoration: none;">[</a>Big Global Mutex<a href="http://wiki.tcl.tk/25243" style="text-decoration: none;">]</a><span class="Apple-converted-space"> </span>is required for<span class="Apple-converted-space"> </span><b>ALL</b><span class="Apple-converted-space"> </span>calls to functions in libtcl</pre>
</li>
<li>
<pre>If you are using a Threaded Tcl, no mutex locks are required</pre>
</li>
</ul>
<pre><span style="color: rgb(0, 0, 0); font-family: sans-serif; font-size: 14.4px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: 1; word-spacing: 0px; -webkit-text-stroke-width: 0px; display: inline !important; float: none; background-color: rgb(255, 255, 255);"></span></pre>
</body>
</html>