The commands Get database parameter and SET DATABASE PARAMETER can be thread-safe and not thread-safe based on the parameter being interacted with.
If a preemptive process calls one of the commands with a not thread-safe parameter in compiled mode, a Runtime Error with the following error code is returned:
-10530 Can't call not thread safe command from a preemptive process.
If a generic wrapper method is applied to call the Get or SET DATABASE PARAMETER commands, make sure to confirm if the parameter is thread-safe or not before trying to call it in a preemptive process.
The list of preemptive parameters are found in the latest version of the documentation (at the time of this Tech Tip the 4D 20R6 documentation):
Get Database parameter
https://doc.4d.com/4Dv20R6/4D/20-R6/Get-database-parameter.301-6958684.en.html
SET DATABASE PARAMETER:
https://doc.4d.com/4Dv20R6/4D/20-R6/SET-DATABASE-PARAMETER.301-6958678.en.html