Good afternoon! I'd like to clarify some information about the NUMERIC DIGITS scope. I have a class with several methods that call each other, like this: Class Method 1 use local Method 2 use local If I set "NUMERIC DIGITS 18" in "Method 1" and then call "Method 2," what will the precision be in "Method 2"? The same question applies without the "use local" command in methods, when class variables are not accessible within the method.
According to the current example, there are no other references to the Temp array. Temp=.nil is necessary so that the subsequent code will check for .nil. How often does the garbage collector run? Is it possible to control when it runs? The Temp array can be very large, and its counterparts can be created in different parallel processes, totaling up to several hundred. This is a heavily used array; it can be filled and reset several times per second. I'm concerned about a memory leak.
Good afternoon! A theoretical question. I have an array of unknown dimensions, which could be either large or small. You need to reset it to zero and assign the value .nil. Example: Temp=.array~new() Temp~append(data) … Temp~append(data) Temp=.nil Does this scheme free the memory for the array? Or is it more correct to do it this way: Drop Temp Temp=.nil Or does it not matter, after some time the memory will be freed “by itself”?
Good afternoon! A theoretical question. I have an array of unknown dimensions, which could be either large or small. I need to reset it by assigning it an empty value. Example: Temp=.array~new() Temp~append(data) … Temp~append(data) Temp=”” Does this scheme free the memory for the array? Or is it more correct to do it this way: Drop Temp Temp=”” Or does it not matter, after some time the memory will be freed “by itself”?
Thank you so much! When I read the instructions, both methods ("TranLast = Tran[Tran~last]", "lastitem()") were described as "returns item in the array" I understood this to mean data copying, not getting an object reference. It would be nice to clarify this in the documentation...
Hello! I need help with the following issue. I have an array that's constantly growing. I need to add a new element and access it immediately. Something like this: Tran=.array~new() Tran~append(.stem~new) TranLast=Tran~last Tran[TranLast]['QUERY'] = ?Query Tran[TranLast]['GENUS'] = ?Genus Tran[TranLast]['TYPE'] = Type Tran[TranLast]['TIM'] = ?TIM I don't like using the "TranLast" variable, as it seems there's a simpler way, but I couldn't find it. For example, by referencing the last element. Something...
This idea has been considered at the theoretical level. The truth is not much different. Since the queue name can be anything, the very existence of a queue with a specific name can be considered a flag. Then you can simply create a queue with a templated name, and when that succeeds, access the file or perform other actions. But that's a hack. A file flag could be used just as successfully. Regarding your proposal, having a separate process could be a problem. Who should start it? Who will shut...
This idea has been considered at the theoretical level. The truth is not much different. Since the queue name can be anything, the very existence of a queue with a specific name can be considered a flag. Then you can simply create a queue with a templated name, and when that succeeds, access the file or perform other actions. But that's a hack. A file flag could be used just as successfully. Regarding your proposal, having a separate process could be a problem. Who should start it? Who will shut...
In such circumstances, abandoning the SysCreateMutexSem(), SysRequestMutexSem(), and other functions seems highly questionable and erroneous. Using semaphores within a single process is only one possible scenario. Examples of using semaphores in different processes are easy to come by: 1. Running two or more copies of the same program. This will lead to significant synchronization issues. 2. You can also work with semaphores in other programming languages while still interacting with Rexx programs....
In such circumstances, abandoning the SysCreateMutexSem(), SysRequestMutexSem(), and other functions seems highly questionable and erroneous. Using semaphores within a single process is only one possible scenario. Examples of using semaphores in different processes are easy to come by: 1. Running two or more copies of the same program. This will lead to significant synchronization issues. 2. You can also work with semaphores in other programming languages while still interacting with Rexx programs....
In such circumstances, abandoning the SysCreateMutexSem(), SysRequestMutexSem(), and other functions seems highly questionable and erroneous. Using semaphores within a single process is only one possible scenario. Examples of using semaphores in different processes are easy to come by: 1. Running two or more copies of the same program. This will lead to significant synchronization issues. 2. You can also work with semaphores in other programming languages while still interacting with Rexx programs....
In such circumstances, abandoning the SysCreateMutexSem(), SysRequestMutexSem(), and other functions seems highly questionable and erroneous. Using semaphores within a single process is only one possible scenario. Examples of using semaphores in different processes are easy to come by: 1. Running two or more copies of the same program. This will lead to significant synchronization issues. 2. You can also work with semaphores in other programming languages while still interacting with Rexx programs....
Thanks for the idea. I'll think about it. Note: the example above is only one possible scenario for interaction between different processes. In other cases, it seems like you'll have to use "legacy" functions.
In such circumstances, abandoning the SysCreateMutexSem(), SysRequestMutexSem(), and other functions seems highly questionable and erroneous. Using semaphores within a single process is only one possible scenario. Examples of using semaphores in different processes are easy to come by: 1. Running two or more copies of the same program. This will lead to significant synchronization issues. 2. You can also work with semaphores in other programming languages while still interacting with Rexx programs....
For example, to ensure that only one process at a time writes to a file, I use the SysCreateMutexSem(), SysRequestMutexSem(), SysReleaseMutexSem(), and SysCloseMutexSem() functions. The latest documentation deprecates these functions, recommending the use of the "MutexSemaphore Class." However, I was unable to use these classes to solve my problem of controlling file writes by different processes. Please suggest the best way to solve my problem at this time. As an example, I'll provide a program...