| 13293 | | call_cleanup( |
| 13294 | | '$lgt_mt_get_reply_aux'(Type, Queue, Goal, This, Self, Tag, Id), |
| 13295 | | ( Type == non_deterministic -> |
| 13296 | | ( thread_property(Id, status(running)) -> % if the thread is still running, it's suspended waiting |
| | 13293 | ( Type == deterministic -> |
| | 13294 | '$lgt_mt_det_reply'(Queue, Goal, This, Self, Tag, Id) % detached thread |
| | 13295 | ; call_cleanup( |
| | 13296 | '$lgt_mt_non_det_reply'(Queue, Goal, This, Self, Tag, Id), |
| | 13297 | (( thread_property(Id, status(running)) -> % if the thread is still running, it's suspended waiting |
| 13307 | | |
| 13308 | | |
| 13309 | | '$lgt_mt_get_reply_aux'(deterministic, Queue, Goal, This, Self, Tag, Id) :- |
| 13310 | | '$lgt_mt_det_reply'(Queue, Goal, This, Self, Tag, Id). |
| 13311 | | |
| 13312 | | '$lgt_mt_get_reply_aux'(non_deterministic, Queue, Goal, This, Self, Tag, Id) :- |
| 13313 | | '$lgt_mt_non_det_reply'(Queue, Goal, This, Self, Tag, Id). |