[問題] 如何中斷跑到一半的程式

看板java作者 (skywalker)時間13年前 (2012/08/28 23:22), 編輯推噓4(4010)
留言14則, 6人參與, 最新討論串1/3 (看更多)
最近寫了一個UI介面來執行之前寫的文字版程式 我想做一個功能就是某程式執行到一半,使用者可以按個鈕停止那個程式(但是我 的UI介面還是要執行中) 可是毫無頭緒要如何做,麻煩大家給點提示,謝謝 程式的架構大概如下 class UI{ ... .... public void StartButton(){ new ProgA(); //這是我按start按鈕後要執行的程式 } public void StopButton(){ ????? //這裡要如何才能終止正在執行的ProgA()? } } 感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.204.64.1

08/28 23:47, , 1F
建構Thread調用interrupt方法
08/28 23:47, 1F

08/28 23:56, , 2F
請問thread是要建構在startbutton or ProgA()裡?
08/28 23:56, 2F

08/29 00:16, , 3F
先問一下,ProgA 裡頭是什麼樣的行為?
08/29 00:16, 3F

08/29 00:20, , 4F
看原op的推文問題似乎不懂物件導向是什麼的樣子... = =|||
08/29 00:20, 4F

08/29 01:04, , 5F
我倒覺得原PO不知道Thread是甚麼耶?
08/29 01:04, 5F

08/29 09:28, , 6F
ProgA是什麼?
08/29 09:28, 6F

08/29 10:49, , 7F
ProgA() 是要跑一段時間的計算程式
08/29 10:49, 7F

08/29 10:53, , 8F
所以ProgA()需要thread方式執行?
08/29 10:53, 8F

08/29 11:03, , 9F
ProgA有沒有繼承Thread、Runnable、或是在裡面使用Thread?
08/29 11:03, 9F

08/29 14:00, , 10F
都沒有說,純粹循序執行而已
08/29 14:00, 10F

08/29 14:07, , 11F
把 ProgA 放到執行緒的 run()函式跑, 同時用 loop, 定期
08/29 14:07, 11F

08/29 14:09, , 12F
檢查是否有被 interrupted, 有則中斷執行....
08/29 14:09, 12F

08/29 14:13, , 13F
然後再stopButton, 中加入 interrupt thread 的 code
08/29 14:13, 13F

08/29 14:17, , 14F
我直接回一篇好了
08/29 14:17, 14F
文章代碼(AID): #1GFE8m9e (java)
文章代碼(AID): #1GFE8m9e (java)