Opened 8 years ago

Closed 8 years ago

#1042 closed defect (fixed)

Initial thread can spontaneously die (or be removed from ccl:all-processes)

Reported by: jlawrence Owned by:
Priority: normal Milestone:
Component: Runtime (threads, GC) Version: trunk
Keywords: Cc:


(defun test (thread-count)
  (let ((threads (loop repeat thread-count
                       collect (ccl:process-run-function
                                "test" (lambda ())))))
    ;;(sleep 0.01)
    (mapc #'ccl:process-kill threads)))

(defun run ()
     (assert (find "Initial" (ccl:all-processes)
                   :key #'ccl:process-name
                   :test #'string=))
     (test 10)
     (format t ".")))

The assertion fails within 100 iterations on dx86cl64, dx86cl, and lx86cl. With the SLEEP call I did not see a failure for 20k iterations.

Change History (1)

comment:1 Changed 8 years ago by gb

  • Resolution set to fixed
  • Status changed from new to closed

(In [15557]) Don't allow a thread to take interrupts before/after *CURRENT-PROCESS* is established. Fixes ticket:1042 in the trunk.

Note: See TracTickets for help on using tickets.