On Aug 7, 2008, at 5:37 PM, Hasan Khan wrote:

All these things lead me to believe that writes to the "s_methods"
variable are not guaranteed to be visible to other threads and,
likewise, a thread reading the "s_methods" variable is not guaranteed to
see updates made by other threads.

We don't do a lot of local synchronization because there are a few more global-level locks that control most access by multiple threads. Like any other software, though, bugs do come to light and are fixed in later versions. For example, in Jess 7.1 (the current version of Jess), the variable s_methods now holds a synchronized map rather than a bare HashMap as in 7.0 , and getMethods() locks the map with a synchronized block.


I am wondering how much emphasis has been placed on concurrency and
visibility issues by the Jess coders?  Is there exposure here?


Quite a bit; Jess is very often used in multithreaded server environments and we're certainly aware of that.

The first thing I would try to address your problem would be to upgrade to the currently-supported version of Jess.


---------------------------------------------------------
Ernest Friedman-Hill
Informatics & Decision Sciences, Sandia National Laboratories
PO Box 969, MS 9012, Livermore, CA 94550
http://www.jessrules.com







--------------------------------------------------------------------
To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the list
(use your own address!) List problems? Notify [EMAIL PROTECTED]
--------------------------------------------------------------------

Reply via email to