FYI: I reported the 1st issue on GitHub (https://github.com/pure-data/pure-data/issues/129) and I create a PR that solves the 2nd on libpd (https://github.com/libpd/libpd/pull/178)

2017-07-21 9:53 GMT+02:00 Pierre Guillot <guillotpierre6@gmail.com>:
Now, I try to use it in a multi-threads context with libpd. The idea is to detach a new thread each time I want to perform an action on an instance (I could have use one thread per instance and signals but it is simpler for a 1st approach). I encountered 2 issues:
- pdinstance_free crashes (I'll investigate the problem)
- libpd_openfile crashes. It seems that sys_lock() does not really lock and the other instances can pass it before the 1st one has called sys_unlock().
My libpd tests are in the folder samples/c/pdtest_thread in my libpd fork https://github.com/pierreguillot/libpd/tree/dev/threadable

Cheers,

Pierre

2017-07-18 21:28 GMT+02:00 Pierre Guillot <guillotpierre6@gmail.com>:
Hi,
I tried today the new multi-threads and multi-instances support in my own PD wrapper and (after a small headache I admit) all my unit-tests passed so I guess it's very promising. Next step is to use it with libpd, I'll keep you informed of my tests.
Thanks a lot for all the work!

Cheers,
Pierre