Hello, the threading bugs I reported a while ago appear to have not
survived the migration from sourceforge, and the old pages are now
404'd. There were a number of test cases, including
(defun test (message-count worker-count)
(let ((to-workers (mp:make-semaphore))
(from-workers (mp:make-semaphore)))
(loop repeat worker-count
do (mp:process-run-function
"test"
(lambda ()
(loop
(mp:wait-on-semaphore to-workers)
(mp:signal-semaphore from-workers)))))
(loop
(loop repeat message-count
do (mp:signal-semaphore to-workers))
(loop repeat message-count
do (mp:wait-on-semaphore from-workers))
(assert (zerop (mp:semaphore-count to-workers)))
(assert (zerop (mp:semaphore-count from-workers)))
(format t ".")
(finish-output))))
(defun run ()
(test 10000 64))
RUN will eventually hang on all versions of ECL I've tried, including
the latest. Another test case was a variant of the above using a
homemade semaphore. I can rewrite that and other test cases, but
before doing so I'd like to know whether the old reports are really
lost or have survived in some form.
Best,
lmj
------------------------------------------------------------------------------
_______________________________________________
Ecls-list mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ecls-list