18

GTK では でタイムアウトを設定できますg_timeout_add。と同様g_signal_connectに、このg_timeout_add関数はタイムアウトを表す ID を返します。それで、IDを使用してタイムアウトをキャンセルする方法はありますか? ドキュメントを見ても、タイムアウト イベントをキャンセルする方法idはありませんが、何らかの方法があるはずだと思いg_timeout_addます。

それで、タイムアウトイベントをキャンセルする方法はありますか、それともユーザー提供のタイムアウトハンドラ関数内でチェックできる「キャンセルフラグ」を設定して手動で処理する必要があるだけですか?

4

1 に答える 1

25

g_timeout_add()で登録されたコールバックを削除するには、次の 2 つの方法があります。

  • コールバック関数を返すFALSE
  • によって返された識別子でg_source_remove()を呼び出しg_timeout_add()ます。
于 2012-08-14T15:09:26.840 に答える