Concurrency
An Arbortext PE Application does not need to be thread-safe. An Arbortext PE 하위 프로세스 only handles one request at a time; therefore, it can only run one Arbortext PE Application at a time. However, an Arbortext PE Application does need to be safe for multi-processing, because the Arbortext PE Request Manager could ask two or more Arbortext PE 하위 프로세스 to run the same Arbortext PE Application at the same time.
For example, if an Arbortext PE Application attempts to write temporary data using an absolute path and file name (e:\tempdata\tempdatafile.txt), two instances of the Arbortext PE Application might run at the same time and overwrite each other’s file. If an Arbortext PE Application stores data to the Windows clipboard, two instances of the operation might run simultaneously and interfere with each other.
Every Arbortext PE Application needs to be serially reusable. An Arbortext PE Application should not attempt to maintain any state from one call to the next. The Arbortext PE Request Manager could ask a particular Arbortext PE 하위 프로세스 to execute any Arbortext PE Application repeatedly, so the Arbortext PE Application must not assume any prior state each time it is invoked. If a particular client submits several Arbortext PE Application requests to an Arbortext PE 서버, the Arbortext PE Request Manager might allocate a different Arbortext PE 하위 프로세스 to serve each request. If the second request expects to find information left behind by the first request (for example, a value stored in a global variable), the application would only work if the Arbortext PE Request Manager happened to allocate the same Arbortext PE 하위 프로세스 to serve both requests.
Parent topic