discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Threading backend on libobjc for Win32


From: Stephen Brandon
Subject: Threading backend on libobjc for Win32
Date: Mon, 29 Oct 2001 21:52:38 +0000

Hi,

Finally got my stuff to link and find its frameworks at runtime on 
Win32/MinGW. Unfortunately libgnustep-gui STILL is not recognised at runtime 
- libobjc never loads its classes despite my best efforts. I'd love to have 
time to produce a minimal test case which does not load at runtime (all my 
other libraries do the right thing, and I can't see any significant 
differences between them and gnustep-gui) but I've already spent several days 
fighting it.

Anyway.

Next problem is that the threading backend in libobjc for win32 threads does 
not implement "conditions". This is because the Win32 API does not have an 
exact analogue for conditions. Unfortunately our code requires queued 
threading and NSConditionLocks, which rely on conditions.

I wonder if anyone around here has faced this before?

I've had a good look around on the net for discussions of the 
Win32/conditions problem, and there are a number of possible solutions. One 
would be to use win32-pthreads, but I'm not sure if they would necessarily 
play nicely with gnustep, if, say, gnustep rested on win32-pthreads, but I am 
imterfacing to external dlls which use native Win32 threads, and call back 
into GNUstep code. In this case I know I need to do a gnustep_register_thread 
(or somesuch) to register the external thread, but I don't know if there 
might be any other potential incompatibilities.

What I hope to attempt tomorrow is to graft in some (hopefully) good code I 
found on the net which implements conditions on top of other standard Win32 
API, into libobjc. This will simply be a thr-win32WithConditions.c type of 
backend and will be easy to put into place.

If anyone has any comments about this, or would like a copy of this once it's 
done, please let me know. A fully functional backend for libobjc on Win32 
would seem to be pretty important for anyone wishing to implement on Win32, 
particularly since it impacts gnustep-base, with NSConditionLocks.

Cheers,
Stephen Brandon
stephen@brandonitconsulting.co.uk



reply via email to

[Prev in Thread] Current Thread [Next in Thread]