Mercurial > hg > Members > nobuyasu > tightVNCProxy
diff src/myVncProxy/MyRfbProto.java @ 162:13458f88d8c9
add RequestScreenThread.java
author | e085711 |
---|---|
date | Wed, 12 Oct 2011 06:45:04 +0900 |
parents | 1c0af90f7f59 |
children | 107b965effc1 3c055da4d050 |
line wrap: on
line diff
--- a/src/myVncProxy/MyRfbProto.java Wed Oct 12 02:52:13 2011 +0900 +++ b/src/myVncProxy/MyRfbProto.java Wed Oct 12 06:45:04 2011 +0900 @@ -71,6 +71,9 @@ private Inflater inflater = new Inflater(); private Deflater deflater = new Deflater(); private CreateThread geth; +// private Thread requestThread; + private RequestScreenThread rThread; + private Thread requestThread; public MyRfbProto() throws IOException { @@ -78,18 +81,30 @@ MyRfbProto(String h, int p, VncViewer v) throws IOException { super(h, p, v); + + rThread = new RequestScreenThread(this); + requestThread = new Thread(rThread); +// requestThread = new Thread(new RequestScreenThread(this)); } MyRfbProto(String h, int p, CreateThread geth) throws IOException { super(h, p); this.geth = geth; proxyFlag = true; + + rThread = new RequestScreenThread(this); + requestThread = new Thread(rThread); +// requestThread = new Thread(new RequestScreenThread(this)); } MyRfbProto(String h, int p) throws IOException { super(h, p); + + rThread = new RequestScreenThread(this); + requestThread = new Thread(rThread); +// requestThread = new Thread(new RequestScreenThread(this)); } - + // over write void writeVersionMsg() throws IOException { clientMajor = 3; @@ -514,6 +529,15 @@ new Thread(stdin).start(); } + + void requestThreadStart() { + requestThread.start(); + } + + public synchronized void requestThreadNotify() { + rThread.reStart(); + } + /** * gzip byte arrays @@ -762,7 +786,8 @@ readClientInit(is); sendInitData(os); new Thread(reader).start(); // discard incoming packet here after. - writeFramebufferUpdateRequest(0,0, framebufferWidth, framebufferHeight, false ); +// writeFramebufferUpdateRequest(0,0, framebufferWidth, framebufferHeight, false ); + requestThreadNotify(); for (;;) { LinkedList<ByteBuffer> bufs = c.poll(); int inputIndex = 0;