如何停止Android服务中的线程

时间:2020-07-18 05:13:47

标签: android multithreading kotlin android-service

由于socket.on("list message", (data) => { console.log(data.message); var messages = ""; data.message.forEach((message) => { messages += ` <div class="card bg-light"><strong>${message.username}:</strong>${message.message}</div> <img class="img-thumbnail" src="uploads/${message.filePath}" width="80" height="80"/> `; $("#messages").html(messages); }); }); 中的nmake -f Makefile,引发了

java.lang.InterruptedException错误onDestroy。我以为Runnable创建了一个新线程并允许睡眠?

Thread.sleep
Runnable

2 个答案:

答案 0 :(得分:1)

使用RELATIVE_PATH中断线程。在thread.interrupt()通话周围添加try-catch

Thread.sleep(1000)

您还可以使用一些class TestRunnable : Runnable { override fun run() { var isInterrupted = false for(i in 1..15) { Log.d("Debug", "startThread " + i) try { Thread.sleep(1000) } catch (e: InterruptedException) { isInterrupted = true } if (isInterrupted) break } } } 变量来中断AtomicBoolean实现中的循环:

Runnable

答案 1 :(得分:-1)

添加线程= null;在Thread(runnable).interrupt()之后。这应该工作。如果希望在用户停止活动时将其杀死,则应尝试覆盖onStop而不是onDestroy()。

希望有帮助!快乐编码:)

相关问题