Commit Graph

93 Commits

Author SHA1 Message Date
ubu32 d62fb5c2d7 fix volatile processing (doesn't do much more). 2011-07-10 04:52:33 -07:00
Vítor Santos Costa 3bfcc2e7b4 fix bad call. 2011-03-14 20:37:55 +00:00
Vítor Santos Costa 921fb1c815 thread_create should ignore bad options, not complain. 2011-03-11 20:36:00 +00:00
Vítor Santos Costa e05b84ce4e fix to thread support. 2011-03-11 19:49:32 +00:00
Vitor Santos Costa 7f70a797f4 fix error messages to obey standard. 2010-10-12 22:02:24 +01:00
Vítor Santos Costa 57ca6f6406 fix with_mutex in uni-threaded case.
avoid dynamics for stable data.
2010-06-17 00:26:41 +01:00
Vítor Santos Costa a055cc4637 meta declarations for thread stuff (from Paulo Moura). 2010-06-14 08:56:21 +01:00
Vítor Manuel de Morais Santos Costa 5ef31fbfd2 experiment in or-parallel threads. 2010-01-14 15:58:19 +00:00
Vitor Santos Costa 79a1d3e13c fix thread stuff (obs from Jiefei Ma). 2009-12-17 23:55:09 -02:00
Vítor Manuel de Morais Santos Costa 72e2a9658e make volatile part of the system (SWI compatibility). 2009-12-04 18:24:22 +00:00
Vitor Santos Costa f61aee4a83 third argument to thread_create needs :, #91 2009-05-30 10:43:03 -05:00
Vitor Santos Costa 46543ccb5c remove redundant $between 2009-05-21 00:40:52 -05:00
Vitor Santos Costa 50fd7dca5a support thread_initialization. 2009-04-25 12:54:21 -05:00
Vítor Santos Costa 65ccd336b2 fix a stupid threads bug 2008-09-04 16:58:45 +01:00
vsc b3a0b412f1 fix threads/0.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2302 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-08-08 16:05:10 +00:00
vsc 5776abb31c more thread fixes.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2301 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-08-08 14:05:34 +00:00
vsc 2581c3a3bf more threadin fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2300 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-08-07 20:51:23 +00:00
vsc 85d7d39dbf more thread fixes
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2297 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-08-06 17:32:22 +00:00
pmoura f26c4592bb Corrected a bug in setting a thread exit status in case the thread goal results in an exception; exit status should be exception(Exception) and not exception(error(Exception,_)).
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2270 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-06-08 16:55:23 +00:00
pmoura 502a5571a8 Corrected a bug in setting a thread exit status in case the thread goal results in an exception; exit status should be exception(Exception) and not exception(error(Exception,_)).
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2269 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-06-08 16:45:52 +00:00
vsc 257c3a2cbc fix threads and LU
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2233 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-05-10 23:24:13 +00:00
vsc 516a349aad only evaluate lists with a single character.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2214 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-08 15:36:53 +00:00
vsc 21f03da2cd fixes for message queues
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2208 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-04 11:28:59 +00:00
vsc 4c933b8d79 implement thread_cancel using signals
use duplicate_term instead of copy_term in throw: throw may lose
reference to term.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2207 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-04 10:02:44 +00:00
vsc f930fd3179 thread at_exit should be module aware.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2206 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-04 09:32:10 +00:00
pmoura 04682ef5f0 Fixed bug in the predicate thread_create/1 when the thread goal generates an exception.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2204 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-03 23:23:06 +00:00
pmoura 2462596050 Fixed missing argument in recorda/3 call.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2198 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-03 01:28:21 +00:00
pmoura 5d6ddc8026 Fixed two bugs when closing a thread: (1) register thread exit status before running the exit hooks; (2) incorrect register of exception exit status.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2197 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-03 01:22:47 +00:00
pmoura f827e047c1 Fixed bug in the thread_create/3 predicate where the thread indentifer was not within scope of the at_exit/1 option.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2196 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-03 00:10:04 +00:00
pmoura 1acbfc4f80 Only register at_exit/1 hooks given by the programmer.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2195 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-03 00:02:24 +00:00
vsc 929ec2412f handle out of memory error at thread creation (obs from Paulo Moura).
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2190 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-02 17:37:07 +00:00
vsc 7aab33a153 fix at_exit and thread_at_exit (obs from Paulo Moura).
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2188 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-04-02 15:13:16 +00:00
pmoura ff59818068 Reimplemented the message_queue_create/1-2 predicates and added new predicate message_queue_property/2 for compliance with the ISO Prolog Threads DTR.
Remove thread info when closing a detached thread.

Simplified creation of thread message queues.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2174 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-03-31 18:41:36 +00:00
pmoura 8a318a5e83 Updated the implementation of the thread_detach/1 predicate to help ensure that threads already terminated at the time of the call are destroyed instead of becoming zombie threads.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2173 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-03-31 16:26:31 +00:00
pmoura 8a1cfeb770 Added support for the SWI-Prolog thread_create/3 option at_exit/1 (work in progress)
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2172 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-03-28 10:57:28 +00:00
vsc bee5cd8c0b fix thread_dettach
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2168 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-03-26 14:51:41 +00:00
vsc 47d7eee66d ensure locking
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2161 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-03-25 00:15:05 +00:00
vsc e2519f4e3a handle message_queue_create/1 with vars right
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2160 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-03-25 00:11:55 +00:00
vsc 7d6e7f2613 make sure thread messages go to user_error.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2159 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-03-24 23:54:32 +00:00
pmoura 9fbbb1e47a Corrected a bug in thread_property/2 due to the use of the broken definition of the auxiliary predicate '$current_thread'/1. Removed predicates '$current_thread'/1-2.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2114 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-02-24 12:40:40 +00:00
pmoura 045965e3ed Completed ISO DTR definition of the message_queue_create/2 predicate. Still commented out waiting for a bug fix when creating queues without using aliases.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2113 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-02-24 12:28:05 +00:00
pmoura eac625e0ec Fixed a bug in the predicate threads/0 where some threads might not be listed if there are gaps between the identifiers of the existing threads (e.g. with threads 0, 1, 3 the thread 3 would not be listed).
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2112 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-02-23 11:31:13 +00:00
vsc 17d16e0b14 Big update to support more SICStus/SWI like message handling
fix YAPSHAREDIR
fix yap.tex (Bernd)


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2107 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-02-22 15:08:37 +00:00
pmoura d39002c271 Work in progress in the implementation of a version of the message_queue_create/2 compliant with the ISO Threads DTR.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2085 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-02-09 13:04:32 +00:00
vsc ff8213e506 make thread code more stable
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2063 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-01-27 11:01:07 +00:00
vsc 4ae454aac6 Will Benton's patches for Mac 64 bits.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2062 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-01-25 00:21:28 +00:00
vsc 637f381d94 valgrind it!
enable atom garbage collection.


git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@2055 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2008-01-23 17:57:56 +00:00
pmoura b6b281684d Updated the definition of the built-in predicate mutex_property/2 to match the latest ISO Threads DTR.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1967 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-10-22 12:58:27 +00:00
pmoura f9b0a9dde7 Added thread_send_message/1 built-in predicate.
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1929 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-09-18 17:50:12 +00:00
vsc 82aad9ab75 fix thread_create and make chr
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@1915 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
2007-07-12 00:18:41 +00:00