Hi, Nathan Summers <rockwalrus@xxxxxxxxx> writes: > Here's a solution that would work: (note, untested code, error > checking and unintersting stuff omitted for clarity, etc) Yes, that would most probably work. > struct SynchStuff { > GThreadPool *pool; > GCond *cond; > GMutex *mutex; > } synch; > > typedef struct SynchStuff SynchStuff; I don't think we need a SynchStuff struct though. These can very well be global static variables. The thread pool will be kept around for the whole lifetime of gimp anway. Sven