NEWEXECUTOR operator
The NEWEXECUTOR operator is the creation of an action that allows the execution of other actions in a new thread pool.
Syntax
NEWEXECUTOR action THREADS threadExpr [syncType]
Description
The NEWEXECUTOR operator creates an action that creates a new thread pool and executes the defined action in such a way that any action created with the NEWTHREAD operator will be executed in one of the threads of the created pool.
Parameters
-
actionA context-dependent action operator that defines an action to be executed.
-
threadExprAn expression which value determines the number of threads in the pool. Must return the value of the
INTEGERclass. -
syncTypeSynchronisation type. Specifies when the execution of
NEWEXECUTORaction completes, allowing you to choose between synchronous and asynchronous approaches. Specified by one of the keywords:WAIT- after all threads have completed execution. This value is used by default.NOWAIT- immediately after all threads have been started.
Examples
testExecutor {
NEWEXECUTOR {
FOR id(Sku s) DO {
NEWTHREAD {
NEWSESSION {
name(s) <- STRING[20](id(s)); // writing the code into the name in 10 threads
APPLY;
}
}
}
} THREADS 10;
}