質問

ちょっと興味があるんだけど。ユーザーがiPhoneアプリで画面に触れると、OSはタッチイベントをどのように処理しますか?現在のコードブロック(関数/メソッド)が終了し、タッチイベントが処理されますか?または、OSはタッチイベントを処理するために実行されているコードを中断しますか?

ありがとう!

晴れ

役に立ちましたか?

解決

画面へのタッチにより、OSはアプリのタッチイベントを生成します。すべてのイベントは、ループのように実装されるメインスレッド(コードを実行するのと同じスレッド)で処理されます。 OSは、イベントを処理するためにコードを中断しません。すべてのイベントは、イベントループの次のパスで処理されます。

他のヒント

現在の関数/メソッドがメインスレッドで実行されている場合、現在のルーチンが戻るまで(実行ループに)タッチイベントハンドラーは呼び出されません。現在の関数/メソッドがメインUIスレッドで実行されていない場合、タッチイベントハンドラーを実行するためにコードを中断している可能性があります。

現在のデバイスでは、タッチイベントは約16ミリ秒ごとに60 Hzフレームレートに量子化されているように見えるため、その時までにイベントとして物理的なタッチを投稿することはできません。イベントが掲載されています。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top