1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-07-18 22:45:23 +02:00

[282364] [dstore][multithread] timer-threads stay active after disconnect

-ammendment
This commit is contained in:
David McKnight 2011-01-28 21:09:22 +00:00
parent bdb90daffd
commit eb950f22a7

View file

@ -329,7 +329,7 @@ public class XMLparser
{ {
if (_firstTime) if (_firstTime)
{ {
_initialKart = new KeepAliveRequestThread(KEEPALIVE_RESPONSE_TIMEOUT, socket); _initialKart = new KeepAliveRequestThread(KEEPALIVE_RESPONSE_TIMEOUT, socket, true);
_firstTime = false; _firstTime = false;
if (VERBOSE_KEEPALIVE) System.out.println("Starting initial KeepAlive thread."); //$NON-NLS-1$ if (VERBOSE_KEEPALIVE) System.out.println("Starting initial KeepAlive thread."); //$NON-NLS-1$
_dataStore.trace("Starting initial KeepAlive thread."); //$NON-NLS-1$ _dataStore.trace("Starting initial KeepAlive thread."); //$NON-NLS-1$
@ -1124,16 +1124,31 @@ public class XMLparser
private long _timeout; private long _timeout;
private boolean _failed; private boolean _failed;
private Socket _socket; private Socket _socket;
private boolean _initial;
public KeepAliveRequestThread(long timeout, Socket socket) public KeepAliveRequestThread(long timeout, Socket socket)
{
this(timeout, socket, false);
}
public KeepAliveRequestThread(long timeout, Socket socket, boolean initial)
{ {
_timeout = timeout; _timeout = timeout;
_failed = false; _failed = false;
_socket = socket; _socket = socket;
_initial = initial;
} }
public void run() public void run()
{ {
if (_initial && !_dataStore.isVirtual()){
// give the client setup time before requesting
try {
sleep(5000);
}
catch (InterruptedException e){
}
}
_dataStore.sendKeepAliveRequest(); _dataStore.sendKeepAliveRequest();
try try
{ {