On Sat, 31 Jan 2009 06:01:48 +0900, Charles Oliver Nutter wrote: > Ken Bloom wrote: >> If you can check and emit a fatal error (or warning) then couldn't you >> just use a reentrant lock? > > Use a reentrant lock and proceed to double-require? > > In our case I think it will be tricky to detect a deadlock, so we're > likely to emit a stern warning when a require is forced to block and > then go ahead and block. At least that will give us an idea where the > circular require lives. > > How would C Ruby detect the deadlock? > > - Charlie I may be in over my head here. I'm having a trouble imagining a situation which deadlocks when circular requires can be handled in multithreaded situations. Please show me a situation which could deadlock. --Ken -- Chanoch (Ken) Bloom. PhD candidate. Linguistic Cognition Laboratory. Department of Computer Science. Illinois Institute of Technology. http://www.iit.edu/~kbloom1/