Win a copy of Functional Reactive Programming this week in the Other Languages forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Linking two Threads in a Client-Server Socket program - Java

 
Praveena Sarathchandra
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I create threads of class A and each sends a serialized object to a Server using ObjectOutputStream.

The Server creates new Threads B for each socket connection (whenever a new A client connects)

B will call a synchronized method on a Shared Resource Mutex which causes it (B) to wait() until some internal condition in the Mutex is true.

In this case how A can know that B is currently waiting?

Note:
A is a GUI. each serialized object sent over socket is added to a queue in Mutex. So, at a particular time if the queue becomes full, B will have to wait till it frees some slots in the queue. So the end user (A GUI thread) has to see a message like "Please wait while a slot becomes free" . User will have to wait for a reply from B (when it becomes notified by Mutex) in order to continue operations in the GUI (i.e: click a button to open the next JFrame and carry on work)...



How each class is dependent.

(A1 = an instance of class A)

A1--------->B1-------->| ------ |
A2--------->B2-------->| Mutex |
A3--------->B3-------->| ------ |

Hope this description is clear. Thanks in advance.
 
Satya Maheshwari
Ranch Hand
Posts: 368
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Can 'B' set a flag before going to wait and reset it after the wait is over? This way A can know if B is waiting.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic