-
Notifications
You must be signed in to change notification settings - Fork 1
/
Client_Out.java
55 lines (44 loc) · 1.24 KB
/
Client_Out.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
import java.io.IOException;
import java.io.ObjectOutputStream;
import java.net.Socket;
public class Client_Out extends Thread implements Parametres {
public Socket s;
public ObjectOutputStream out;
public EntreeClavier clavier;
public Client_Out(Socket s, EntreeClavier clavier) throws IOException
{
this.s = s;
this.clavier = clavier;
}
public void send() throws IOException
{
clavier.latence = System.currentTimeMillis();
out.reset();
out.writeObject(clavier);
out.flush();
clavier.message = null;
}
@Override
public void run()
{
try {
out = new ObjectOutputStream(s.getOutputStream());
long beforeTime, timeDiff, sleep;
beforeTime = System.currentTimeMillis();
while(true)
{
send();
timeDiff = System.currentTimeMillis() - beforeTime;
sleep = DELAI - timeDiff;
if (sleep < 0)
sleep = 2;
try {
Thread.sleep(sleep);
} catch (InterruptedException e) {
System.out.println("interrupted");
}
beforeTime = System.currentTimeMillis();
}
} catch (IOException e1) {e1.printStackTrace();}
}
}