You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
isready(pool::AbstractWorkerPool) just checks whether there's something in pool.channel, but if that thing is PID that is not in procs(), then take!(pool) will throw it away, delete it from the pool, and block forever. The most straightforward way to address this would be to have isready do the same integrity check, or, to check at push!/put! (and hence also at construction time). The latter may be breaking, but IMO the inconsistency between take!, isready, and length is a bug that should be fixed.
isready(pool::AbstractWorkerPool)
just checks whether there's something inpool.channel
, but if that thing is PID that is not inprocs()
, thentake!(pool)
will throw it away, delete it from the pool, and block forever. The most straightforward way to address this would be to haveisready
do the same integrity check, or, to check atpush!
/put!
(and hence also at construction time). The latter may be breaking, but IMO the inconsistency betweentake!
,isready
, andlength
is a bug that should be fixed.MWE:
The text was updated successfully, but these errors were encountered: