One hint: after installing BSF4ooRexx one can use the menu "BSF4ooRexx ->
Samples" to get an
explorer window. Then changing into "JavaFX" and loading "index.html" will
explain how to run those
JavaFX nutshell examples. You will see why I think it is so important to get
the JavaFX support
stable by finding the root cause.
---rony
On 07.08.2017 16:31, Rony G. Flatscher wrote:
>
> Dear Moritz:
>
> On 07.08.2017 15:02, Moritz Hoffmann wrote:
>> without going into too much detail I would say it's hard to track down the
>> root cause just from
>> the stack traces. It still looks like a memory corruption issue that you're
>> facing, especially
>> because it's not a deterministic failure.
> Yes, it definitely looks like it!
> :(
>
>> I don't see why you want to call into Rexx from different Java threads. Rexx
>> has a global
>> interpreter lock so you won't benefit from parallelism unless you have fully
>> independent Rexx
>> instances.
> The reason is simple: when employing a Java GUI, then it should be possible
> to write event
> handlers in Rexx and to interact with the GUI objects from Rexx.
>
> If an event is fired by Java, it will be fired on the GUI thread such that
> the Rexx code is able
> to directly interact with the GUI objects.
>
> If a Rexx programmer needs to interact with GUI objects from a non-GUI
> thread, then this would
> hang the GUI. Rather, one needs to make sure that the Rexx interaction gets
> carried out on the GUI
> thread sometimes later. This is possible by invoking Platfrom.runLater() (in
> JavaFX, cf.
> <https://docs.oracle.com/javase/8/javafx/api/javafx/application/Platform.html>)
> or
> SwingUtilities.invokeLater (in Java swing, the predecessor of JavaFX, cf.
> <https://docs.oracle.com/javase/8/docs/api/javax/swing/SwingUtilities.html#invokeLater-java.lang.Runnable->).
>
> It is in this scenario, executing Rexx code on the JavaFX GUI thread that
> leads to the reported
> and observed crashes.
>
> BSF4ooRexx has been quite stable for a long time including using it on
> multiple threads in parallel.
>
>>
>> Is the code available somewhere? Can you put it on Github or some other
>> place so people can have
>> a look? (You can also create private repos there)
> Yes, I just prepared it, you (and everyone interested in taking a look) can
> fetch it from my
> Dropbox, which also contains a "readme.txt" file (also attached to this mail):
>
>
> <https://www.dropbox.com/sh/xjnzwm6r0qnugzc/AACN67fJc4CZ2NOYxNaSiewFa?dl=0>.
>
> You would need (preferably 32-bit on Windows, because that is the ooRexx
> version that is needed if
> interfacing with MS Office):
>
> * ooRexx 5.0beta (latest installation builds from trunk:
>
> <https://www.dropbox.com/sh/x2dczehvq5fzqtx/AAA2U2G10ELtuvmtQZNPkw3pa?dl=0>
> * Java (64- and 32-bit can be installed in parallel):
> <https://java.com/en/download/manual.jsp>
> * the latest BSF4ooRexx:
> <https://sourceforge.net/projects/bsf4oorexx/files/beta/20161026/>.
>
> You start the application by double-clicking "startTestProgressBar.rex" or
> entering
> "startTestProgressBar.rex" in a new command line window (such that the
> installation changes to the
> environment are honored).
>
> If there are any questions that I can answer, I am more than willing to try!
> ;)
>
> ---rony
>
> P.S.: "worker.rex" in this application uses a new ooRexx class named
> "FxGUIThread" (defined at the
> end of "BSF.CLS") to send Rexx messages to Rexx objects (including the GUI
> proxy objects)
> sometimes later on the JavaFX GUI thread.
>
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel