Jonas Maebe wrote:
I think the "easiest" way for you to do this would be to do something similar to what the FPC rtl does: write your own function that does all of this initialisation, and pass that one to pthread_create as the function to run in the new thread. Then from this function perform all initialisation, and finally call the original function.
Thanks. I have done this and it is working. It is not the ideal solution though....BeginThread expects a 'register' function as the thread function, while the library provides a 'cdecl' function. This means I had to wrap the C thread function into another function call. So there are now quite a bit of layering happening on top of the original thread function. I think it would be good if BeginThread can accept both register functions and cdecl functions.

And then I hope the library author accept my changes.
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to