當前位置:編程學習大全網 - 腳本源碼 - runloop中的source0和source1分別處理什麽時間

runloop中的source0和source1分別處理什麽時間

source1 :蘋果創建用來接受系統發出事件,當手機發生壹個觸摸,搖晃或鎖屏等系統,這時候系統會發送壹個事件到app進程(進程通信),這也就是為什麽叫基於port傳遞source1的原因,port就是進程端口嘛,該事件可以激活進程裏線程的runloop,比如妳點擊壹下app的按鈕或屏幕,runloop就醒過來處理觸摸事件,妳可以做個實驗,在主線程的runloop中添加壹個CFRunLoopObserverRef,用switch輸出runloop6個狀態,這時候妳每點擊壹次屏幕,他就會輸出Runloop六個狀態,然後進入休眠。

source0 :執行performSelectors方法,假如妳在主線程performSelectors壹個任務到子線程,這時候就是在代碼中發送事件到子線程的runloop,這時候如果子線程開啟了runloop就會執行該任務,註意該performSelector方法只有在妳子線程開啟runloop才能執行,如果妳沒有在子線程中開啟runloop,那麽該操作會無法執行並崩潰。

上面是個人理解,覺得有問題請評論指出壹下!

  • 上一篇:談情說案犀利妹去澳洲是第幾集
  • 下一篇:聖鬥士星矢漫畫
  • copyright 2024編程學習大全網