Changeset 4451
- Timestamp:
- 08/29/08 09:47:12 (4 months ago)
- Location:
- trunk
- Files:
-
- 2 modified
-
compiler/logtalk.pl (modified) (2 diffs)
-
RELEASE_NOTES.txt (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/compiler/logtalk.pl
r4450 r4451 13291 13291 % answering thread exists; go ahead and retrieve the solution(s): 13292 13292 thread_get_message(Queue, '$lgt_thread_id'(Type, Goal, This, Self, Tag, Id)), 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 13297 13298 catch(thread_send_message(Id, '$lgt_exit'), _, true) % for a request to an alternative proof; tell it to exit 13298 ; true 13299 ), 13300 thread_join(Id, _) 13301 ; true 13299 ; true 13300 ), 13301 thread_join(Id, _)) 13302 13302 ) 13303 13303 ) … … 13305 13305 throw(error(existence_error(goal_thread, Goal), Sender)) 13306 13306 ). 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).13314 13307 13315 13308 -
trunk/RELEASE_NOTES.txt
r4450 r4451 46 46 thread local. 47 47 48 Small performance improvement to the threaded/1 built-in multi-threading49 predicate.48 Small performance improvement to the built-in multi-threading predicates 49 threaded/1 and threaded_exit/1-2. 50 50 51 51 Added a multifile/1 directive for the logtalk_library_path/2 predicate.
