tinykernel
読み取り中…
検索中…
一致する文字列を見つけられません
tk::PreemptGuard クラス

プリエンプション禁止をスコープ単位で安全に管理する RAII クラス [詳解]

#include <kernel.hpp>

公開メンバ関数

 PreemptGuard ()
 ~PreemptGuard ()
 PreemptGuard (const PreemptGuard &)=delete
PreemptGuard & operator= (const PreemptGuard &)=delete

詳解

プリエンプション禁止をスコープ単位で安全に管理する RAII クラス

生成時に自動で tk::preempt_disable() を呼び、スコープを抜けた際に自動で tk::preempt_enable() を呼びます。

{
// この区間はタスクスイッチが発生しない (I2C/SPI通信などに最適)
i2c_write_blocking(...);
} // 自動でタスクスイッチが再開
プリエンプション禁止をスコープ単位で安全に管理する RAII クラス
定義 kernel.hpp:156

構築子と解体子

◆ PreemptGuard() [1/2]

tk::PreemptGuard::PreemptGuard ( )
inline

◆ ~PreemptGuard()

tk::PreemptGuard::~PreemptGuard ( )
inline

◆ PreemptGuard() [2/2]

tk::PreemptGuard::PreemptGuard ( const PreemptGuard & )
delete

関数詳解

◆ operator=()

PreemptGuard & tk::PreemptGuard::operator= ( const PreemptGuard & )
delete

このクラス詳解は次のファイルから抽出されました:
  • C:/Users/yoneda/Documents/Pico_Projects/tinykernel/tinykernel/include/tinykernel/kernel.hpp