[問題] signal handler可被中斷嗎?

看板Linux作者 (waytin)時間16年前 (2009/05/11 00:56), 編輯推噓0(006)
留言6則, 2人參與, 最新討論串1/1
在做關於touch screen的實驗, 卻發生想不通的情況。 我用signal(SIGIO, signal_handler)來註冊, 應該是碰一下touch screen就會進入signal_handler, 問題在於,常常碰一下卻進入了兩次, 我在signal_handler的最後寫了sleep(3), 結果還是一樣, 碰一下連續跳兩次到signal_handler, 這是表示在執行handler中又被中斷嗎? 可是我查的資料說,不會有這種情形。 會是touch screen的問題嗎? 謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.251.184

05/13 11:35, , 1F
定一個global var,來避免中斷又中斷.
05/13 11:35, 1F

05/13 11:36, , 2F
也有可能是你中斷判斷的interval time設太短
05/13 11:36, 2F

05/13 11:37, , 3F
再來就可能是touch screen連送兩次中斷訊號~
05/13 11:37, 3F

05/13 21:49, , 4F
所以真的會在signal handler中有進中斷囉?
05/13 21:49, 4F

05/13 21:49, , 5F
這樣signal handler會recursive的執行嗎?
05/13 21:49, 5F

05/14 09:45, , 6F
後來發現好像是信號會等待...
05/14 09:45, 6F
文章代碼(AID): #1A1mSZ9V (Linux)