imagereceivethread.java

来自「简单的java程序 自己看啊有问题留言」· Java 代码 · 共 52 行

JAVA
52
字号
package org.jstudio.tools.pcanywhere;

import java.io.*;
import java.net.*;
import java.awt.image.*;
import com.sun.image.codec.jpeg.*;

/**
 * <p>Title: </p>
 */
public class ImageReceiveThread extends ThreadServer {
    private Socket socket ;
    private MainFrame frame ;
    JPEGImageDecoder de = null;
    BufferedImage image = null;

    private boolean isRun = true;

    public ImageReceiveThread(Socket socket,MainFrame frame) throws Exception{
        this.socket = socket ;
        this.frame = frame ;
        socket.setReceiveBufferSize(Environment.IMAGE_CACHE * 3); //接收缓冲
        de = JPEGCodec.createJPEGDecoder(socket.getInputStream());
    }

    public void run(){
        try {
            while (isRun) {
                image = de.decodeAsBufferedImage();
                if (image != null) {
                    frame.showClientScreen(image);
                }
            }
        }
        catch (Exception e) { }
        finally{
            try {
                socket.close();
                de = null ;
                image = null ;
                ThreadManager.remove(this.getClass());
            }
            catch (Exception e) {}
        }
    }

    public void quit(){
        isRun = false;
    }

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?