Run this same code in Jacl under jdb. When it locks up, interupt
the code and see which threads are locked. You should then be able
to get a backtrace for each of the threads to find out where
the deadlock is. I think this bug in in the notifier somewhere, so
it should deadlock both Jacl and Tcl Blend.

Mo Dejong
Cygnus Solutions

On Thu, 9 Dec 1999, Randolph S. Kahle wrote:

> 
> I am making a lot of progress today understanding the JavaBean event 
> processing. But I am now stuck again.
> 
> In the class EventAdaptor.java the method _processEvent(...) has the 
> following code:
> 
> BeanEvent evt = new BeanEvent( interp, paramTypes, params, cmd );
> interp.getNotifier().queueEvent( evt, TCL.QUEUE_TAIL);
> evt.sync();
> 
> When my JavaBean fires an event into the Adapter class created by Tcl (upon 
> registration using the java::bind command ), it locks up on the call to:
> 
> evt.sync();
> 
> (I put in trace print out).
> 
> and never returns.
> 
> What occurs to me is that there must be a Thread running on interp 
> somewhere that fetches these events and processes them internally. I do not 
> have any such threads running. Can someone point me to the point where I 
> must be "spinning" a thread on the other side of this event queue?
> 
> I guess I'm missing a fundamental step here...
> 
> Thanks!
> 
> Randy Kahle
> 
> 
> ----------------------------------------------------------------
> The TclJava mailing list is sponsored by Scriptics Corporation.
> To subscribe:    send mail to [EMAIL PROTECTED]  
>                  with the word SUBSCRIBE as the subject.
> To unsubscribe:  send mail to [EMAIL PROTECTED] 
>                  with the word UNSUBSCRIBE as the subject.
> To send to the list, send email to '[EMAIL PROTECTED]'. 
> 
> 

----------------------------------------------------------------
The TclJava mailing list is sponsored by Scriptics Corporation.
To subscribe:    send mail to [EMAIL PROTECTED]  
                 with the word SUBSCRIBE as the subject.
To unsubscribe:  send mail to [EMAIL PROTECTED] 
                 with the word UNSUBSCRIBE as the subject.
To send to the list, send email to '[EMAIL PROTECTED]'. 

Reply via email to