This week's book giveaway is in the OO, Patterns, UML and Refactoring forum. We're giving away four copies of Refactoring for Software Design Smells: Managing Technical Debt and have Girish Suryanarayana, Ganesh Samarthyam & Tushar Sharma on-line! See this thread for details.
If I am making a request to read a value in a JTextField using tthe AWT Event Queue and storing it in a local variable, the value is not immediately available. I have to wait somehow to know it has been written from the Even Dispatch Thread to the local variable before using it in another thread. I am not sure how to synchronize this. Does anyone have a tip to point me in the right direction?
It all depends on what the purpose of this is.
A couple of possible solutions are:
1. You could have your other thread use EventQueue.invokeAndWait to get the value from the JTextField.
2. You could write the value into a BlockingQueue on the event thread and have the other thread call the queue's take() method to get/wait for the value.
Note these are just 2 possible solutions I picked at random, if you can give full details of what you are trying to achieve we may be able to suggest a better solution for your scenario.