How to stop a thread waiting in a blocking read operation in Java?

后端 未结 7 1901
萌比男神i
萌比男神i 2020-12-03 10:40

I have a thread that executes the following code:

public void run() {
    try {
        int n = 0;
        byte[] buffer = new byte[4096];
        while ((n          


        
7条回答
  •  失恋的感觉
    2020-12-03 10:55

    you can use a external flag for this

    boolean flag = true;
    
    
    public void run() { 
        try { 
            int n = 0; 
            byte[] buffer = new byte[4096]; 
            while ((n = in.read(buffer)) != -1 && flag) { 
                out.write(buffer, 0, n); 
                out.flush(); 
            } 
        } catch (IOException e) { 
            System.out.println(e); 
        } 
    } 
    

提交回复
热议问题