whycxzp
2024-10-19 27be5f5586a88619e4e01cf1ac9c152240012d2a
更新voice socket
1个文件已修改
20 ■■■■■ 已修改文件
src/main/java/com/whyc/webSocket/VoiceWavReadSocket.java 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/webSocket/VoiceWavReadSocket.java
@@ -22,7 +22,7 @@
    private Session session;
    private Thread thread;
    private volatile Thread thread;
    private static AlarmDataService alarmDataService;
@@ -40,20 +40,21 @@
        //UserInf user = new UserInf();
        //user.setUId(1001L);
        ServletContext servletContext = httpSession.getServletContext();
        Thread thread = new Thread() {
        thread = new Thread() {
            @Override
            public void run() {
                try{
                    Response res = alarmDataService.getWavRead4Socket(user,servletContext,httpSession);
                    session.getBasicRemote().sendObject(new Response().set(1, res));
                    sleep(2000);
                    while (!currentThread().isInterrupted()) {
                        Response res = alarmDataService.getWavRead4Socket(user, servletContext, httpSession);
                        session.getBasicRemote().sendObject(new Response().set(1, res));
                        sleep(2000);
                    }
                } catch (Exception e) {
                    this.interrupt();
                }
            }
        };
        thread.start();
        this.thread = thread;
    }
    @OnClose
@@ -62,15 +63,20 @@
        if(session.isOpen()){
            session.close();
        }
        if (thread != null && thread.isAlive()) {
            thread.interrupt();
        }
    }
    @OnError
    public void onError(Throwable error) throws IOException {
        //error.printStackTrace();
        thread.isInterrupted();
        if(session.isOpen()){
            session.close();
        }
        if (thread != null && thread.isAlive()) {
            thread.interrupt();
        }
    }
}