On Thu, 30 Mar 2017, Michael Van Canneyt wrote:
On Thu, 30 Mar 2017, Krzysztof wrote:
2017-03-30 15:19 GMT+02:00 Michael Van Canneyt <mich...@freepascal.org>
Nevertheless, that should work.
I've used it in multi-threaded apache modules.
Well it doesn't work or fpjson module is not thread safe in this case. You
can test it by yourself with attached demo (first post). Try it few times
because sometimes if you are lucky then there is no error
If I find a moment, I will test.
I can reproduce the problem.
At least partially it is related to the threads mechanism not being initialized
correctly.
To fix that, you can do the following.
In the library startup code, create a dummy thread.
This will initialize the threads mechanism:
library testlib;
{$mode objfpc}{$H+}
uses
cthreads, cmem, Classes, testlibu;
exports
InitTest, FinalizeTest, Test;
begin
with TThread.Create(False) do
end.
After this, I no longer get the problem (which doesn't mean there are no
other possible problems :) )
Michael.
_______________________________________________
fpc-pascal maillist - fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal