Dear All,
We have just uploaded the new release of Jekejeke Prolog. We wrapped the
multi-threading in a couple of library modules.
- Module thread:
This module provides new predicates for the management of the
life-cycle of a thread. Threads can be created with the predicate
thread_new/2 and then started via the predicate thread_start/1. A thread
need not be explicitly destroyed, it will automatically be reclaimed by
the Java GC when not anymore used.
- Modules lock, pipe and time:
These modules provide a couple of synchronization, communication and
timing primitives. The module lock provides binary mutexes and read
write mutexes. The module pipe provides a bounded queue. The module time
provides an alarm queue. Threads waiting for a primitive can be interrupted.
- Abort Menuitem:
We added an abort menu item to the Swing GUI and to the Android GUI
of the runtime library and of the development environment. In connection
with setup_call_cleanup/3, thread_abort/1 and thread_join/1 application
code can tear down spawned threads.
Happy coding!
Jan Burse, 13.07.2016
http://www.jekejeke.ch/