Just for the record and to inform for those who do not follow the ooRexx 
trackers: after creating a
proper bug report (*[bugs:#1554] 
<https://sourceforge.net/p/oorexx/bugs/1554/>*) in the past days
patches got developed and tested that address and solve this problem.

---rony


On 18.09.2018 17:04, Rony G. Flatscher wrote:
>
> OK, I have spent quite some time on the Linux box. Created debug versions for 
> ooRexx and
> BSF4ooRexx and tried to use gdb to get at the data when the hanging or 
> exceptions occur.
>
> Unfortunately, gdb reports SIGSEGV (segmentation faults) in the JVM (using 
> Oracle's Java 1.8) in
> both scenarious: loading a Rexx script via rexx and then loading Java to run 
> the Rexx script, and
> loading a Java program that will load Rexx to run the Rexx script. :(
>
> Running the (BSF4)ooRexx programs outside gdb works, no matter whether rexx 
> loads Java or Java
> loads rexx to execute the scripts.
>
> ---
>
> Some observations:
>
>   * the concurrent updating of awt/swing and JavaFX GUIs hangs as on Wndows. 
> Sometimes the "Stop"
>     button (causing an asynchroneous call back on the awt/JavaFX GUI thread) 
> works, i.e. on the
>     GUI thread the ooRexx control variable gets reset that controls the Rexx 
> thread that
>     dispatches runLater messages to the Java GUI thread on a separate Rexx 
> thread, which is
>     probably interesting, here a sketch of the execution (RT1=primodal Rexx 
> thread, JGT2=Java GUI
>     thread, RTn=Rexx thread dispatching messages to Java GUI using 
> invokeLater):
>     RT1:                             | JGT2:                                 
> | RTn: dispatcher thread
>                                      |                                       |
>     sets up the GUI, waits until     | Java GUI thread: sends Rexx objects   
> | "Start" button press causes new
>     GUI closes using a Rexx control  | messages if "Start" or "Stop" buttons 
> | Rexx thread (using reply) which
>     variable that gets set when      | get pressed, or the window gets       
> | dispatches GUI messages until 
>     user closes window               | closed; sets the Rexx control vars    
> | "Stop" gets pressed which will 
>                                      |                                       
> | cause the Rexx control var to be reset
>   * the BSF4ooRexx testunit excercising multithreaded executions that hangs 
> and causes an
>     exception on Windows, causes hangs on Linux as well. So far I have not 
> been able to cause an
>     exception.
>
>     Also, a few times the test script ran successfully!
>
>     (This test script creates 23 Java threads that each create an ooRexx 
> interpreter instance and
>     run a Rexx script that each will cause 29 Rexx threads to spin off which 
> will interact with a
>     Rexx array object directly and indirectly via a Java object proxying a 
> Rexx object. This test
>     as currently configured will create a total of 712 threads in its run.)
>
> Short of success in creating the necessary information on Linux, I will have 
> to resort to Windows,
> but do not know whether I will be able to do that today.
>
> ---rony
>

_______________________________________________
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel

Reply via email to