<div dir="ltr">Fare,<div><br></div><div style>I like the general idea, but I think it would be better to encapsulate the actual thread starting in Hunchentoot. The patch you proposed puts the burden of starting threads onto the user.</div>
<div style><br></div><div style>I would suggest:</div><div style><br></div><div style>(defgeneric make-thread-function (taskmaster thunk)</div><div style> (:method ((taskmaster t) thunk)</div><div style> thunk)))</div>
<div style><br></div><div style>I like the general simplification with the introduction of start-thread, but that GF should not be part of the public interface. Also, the arguments should be (taskmaster thunk &key name). I see no reason to leave the argument list open as start-thread is meant to be called only from within Hunchentoot.</div>
<div style><br></div><div style>Documentation updates are missing.</div><div style><br></div><div style>Let me know what you think.</div><div style>-Hans</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">
On Thu, Mar 21, 2013 at 8:54 PM, François-René Rideau <span dir="ltr"><<a href="mailto:notifications@github.com" target="_blank">notifications@github.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<p>Introduce start-thread as an entry point so specialized taskmasters<br>
can wrap bindings and condition handlers around hunchentoot new thread thunks.</p>
<p>Note that LispWorks and non-LispWorks should probably do the same thing wrt starting a thread for the acceptor or not. I chose to always start a thread, as per the non-LispWorks default. That choice could be reversed. But it's probably bad practice to let the LW and non-LW versions diverge on such a point.</p>
<hr>
<h4>You can merge this Pull Request by running</h4>
<pre> git pull <a href="https://github.com/fare/hunchentoot" target="_blank">https://github.com/fare/hunchentoot</a> master</pre>
<p>Or view, comment on, or merge it at:</p>
<p> <a href="https://github.com/edicl/hunchentoot/pull/52" target="_blank">https://github.com/edicl/hunchentoot/pull/52</a></p>
<h4>Commit Summary</h4>
<ul>
<li>Introduce start-thread as an entry point so specialized taskmasters</li>
</ul>
<h4>File Changes</h4>
<ul>
<li>
<strong>M</strong>
<a href="https://github.com/edicl/hunchentoot/pull/52/files#diff-0" target="_blank">packages.lisp</a>
(2)
</li>
<li>
<strong>M</strong>
<a href="https://github.com/edicl/hunchentoot/pull/52/files#diff-1" target="_blank">taskmaster.lisp</a>
(111)
</li>
</ul>
<h4>Patch Links:</h4>
<ul>
<li><a href="https://github.com/edicl/hunchentoot/pull/52.patch" target="_blank">https://github.com/edicl/hunchentoot/pull/52.patch</a></li>
<li><a href="https://github.com/edicl/hunchentoot/pull/52.diff" target="_blank">https://github.com/edicl/hunchentoot/pull/52.diff</a></li>
</ul>
</blockquote></div><br></div>