Spun off - I am sure I typed spun off (yes, forgot to switch off the spelling correction on this tablet - it wanted to ‘correct’ it again.)
René. > On 21 Jan 2022, at 17:33, rvjan...@xs4all.nl wrote: > > Ok, thanks. That helps! > I think for NetRexx, I am going the Streams route, as spun of threads are > just jvm threads, as are the ‘address’ed shells - well processes, but to > NetRexx they still run on a jvm thread. > > Best regards, > > René. > >>> On 21 Jan 2022, at 16:59, Rick McGuire <object.r...@gmail.com> wrote: >>> >> >> >> >>> On Fri, Jan 21, 2022 at 10:26 AM rvjan...@xs4all.nl <rvjan...@xs4all.nl> >>> wrote: >>> We used to call these Control Blocks, as in the interface to the OS. In >>> Rexx we can address environments. One of these is the OS shell, these have >>> data to exchange information with the addressed environments, like for >>> example how they can update the Rexx variable pool. I just wondered if >>> these all are instance variables, or whether there is some other method >>> needed to synchronise acces, for example to make sure they are not garbage >>> collected prematurely, but are when the thread using them has ended. >> >> Still not sure what you are looking for. If the external environment is the >> system one, the command gets spun off as a separate process so interactions >> like the variable pool are not possible. For other environments, the APIs >> that allow those interactions have to first obtain the global interpreter >> lock before accessing any internal data. ooRexx isn't fully multithreaded >> but rather uses cooperative multithreading. While code runs on separate >> threads, only one thread actually has access to the internals of the >> interpreter at one time. The only thing close to "a variable that controls >> access" is the kernel semaphore that controls access. >> >> Rick >> >>> >>> René. >>> >>>>> On 21 Jan 2022, at 16:12, Rick McGuire <object.r...@gmail.com> wrote: >>>>> >>>> >>>> >>>> >>>>> On Fri, Jan 21, 2022 at 9:44 AM rvjan...@xs4all.nl <rvjan...@xs4all.nl> >>>>> wrote: >>>>> Thank you Rick, >>>>> >>>>> What I meant with the last question is, are the blocks that control an >>>>> ADDRESS environment also instance variables? >>>> >>>> And I still don't understand what you are asking for. What do you mean by >>>> "blocks". I suspect you're assuming something that probably doesn't exist. >>>> >>>> Rick >>>> >>>>> >>>>> René. >>>>> >>>>>>> On 21 Jan 2022, at 15:39, Rick McGuire <object.r...@gmail.com> wrote: >>>>>>> >>>>>> >>>>>> All access to the standard handles are done via Stream object instances, >>>>>> and all of the methods are guarded so the synchronization between >>>>>> threads is automatic. I'm not sure what you are asking with the last >>>>>> question. >>>>>> >>>>>> Rick >>>>>> >>>>>> >>>>>>> On Fri, Jan 21, 2022 at 9:31 AM rvjan...@xs4all.nl <rvjan...@xs4all.nl> >>>>>>> wrote: >>>>>>> Hi, >>>>>>> >>>>>>> Some questions: >>>>>>> >>>>>>> Can anybody point me to the relevant source code that shows how ooRexx >>>>>>> ‘handles’ (no pun intended) multithreaded access to file handles; more >>>>>>> specificly (and also) how the access to the standard shell handles is >>>>>>> guarded (if at all) in the case multiple threads want to use stdin, >>>>>>> stdout and stderr. I seem to remember that say can be rerouted: are the >>>>>>> handles protected at that moment? >>>>>>> >>>>>>> In NetRexx these handles are static, so cause a bit of trouble when we >>>>>>> re-route in a heavily multithreaded environment/application like >>>>>>> Pipelines. >>>>>>> The JSR223 interface suffers likewise, as it seems to require that >>>>>>> every thread going through it can assign its own file handles. >>>>>>> >>>>>>> Also, what happens when we ‘address’ an external environment - do all >>>>>>> threads assume their own I/O handles, or are they using the same set >>>>>>> that is set centrally? >>>>>>> >>>>>>> Many thanks in advance. >>>>>>> >>>>>>> René. >>>>>>> _______________________________________________ >>>>>>> Oorexx-devel mailing list >>>>>>> Oorexx-devel@lists.sourceforge.net >>>>>>> https://lists.sourceforge.net/lists/listinfo/oorexx-devel >>>>>> _______________________________________________ >>>>>> Oorexx-devel mailing list >>>>>> Oorexx-devel@lists.sourceforge.net >>>>>> https://lists.sourceforge.net/lists/listinfo/oorexx-devel >>>>> _______________________________________________ >>>>> Oorexx-devel mailing list >>>>> Oorexx-devel@lists.sourceforge.net >>>>> https://lists.sourceforge.net/lists/listinfo/oorexx-devel >>>> _______________________________________________ >>>> Oorexx-devel mailing list >>>> Oorexx-devel@lists.sourceforge.net >>>> https://lists.sourceforge.net/lists/listinfo/oorexx-devel >>> _______________________________________________ >>> Oorexx-devel mailing list >>> Oorexx-devel@lists.sourceforge.net >>> https://lists.sourceforge.net/lists/listinfo/oorexx-devel >> _______________________________________________ >> Oorexx-devel mailing list >> Oorexx-devel@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/oorexx-devel
_______________________________________________ Oorexx-devel mailing list Oorexx-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/oorexx-devel