I've forgot to send this to the list.
---------- Forwarded message ---------- From: Kiyoshi Mizumaru kiyoshi.mizumaru@gmail.com Date: Mon, Mar 26, 2012 at 1:02 PM Subject: Re: [Bordeaux-threads-devel] join-thread in allegro To: Stelian Ionescu sionescu@cddr.org
I think it's good idea to solve this without defining a new process class. But in b03b582, make-lock, with-lock-held and current-thread are used prior to be defined, and lead to compile error.
Moving the "Thread creation" section solved this and works as expected: https://bitbucket.org/kmizumar/bordeaux-threads/changeset/02cc8c9b4ce7
Kiyoshi -- Kiyoshi Mizumaru kiyoshi.mizumaru@gmail.com
On Mon, Mar 26, 2012 at 8:24 AM, Stelian Ionescu sionescu@cddr.org wrote:
On Mon, 2012-03-26 at 00:35 +0900, Kiyoshi Mizumaru wrote:
Hi,
Even though the api documentation doesn't mention it, I've found that join-thread is expected to have a value of the thread's function in some lisp implementations.
(asdf:test-system :sqlite) always fails in concurrent access test since it checks return values of join-thread and join-thread's value is nil in current implementation for Allegro CL. The followings are changes I've made to correct this problem, so please have a look at it.
https://bitbucket.org/kmizumar/bordeaux-threads/changeset/5de529f36b92 https://bitbucket.org/kmizumar/bordeaux-threads/changeset/549bbcdcf794
Thanks in advance and sorry for my poor English, I'm still learning it.
I committed a different implementation that uses a hash-table to store the return values, which doesn't require us to create a new process class. Please test and is some test fails, send the output
-- Stelian Ionescu a.k.a. fe[nl]ix Quidquid latine dictum sit, altum videtur. http://common-lisp.net/project/iolib
Bordeaux-threads-devel mailing list Bordeaux-threads-devel@common-lisp.net http://lists.common-lisp.net/cgi-bin/mailman/listinfo/bordeaux-threads-devel