tinykernel
Loading...
Searching...
No Matches
tk::PreemptGuard Class Reference

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

#include <kernel.hpp>

Public Member Functions

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

Detailed Description

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

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

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

Constructor & Destructor Documentation

◆ PreemptGuard() [1/2]

tk::PreemptGuard::PreemptGuard ( )
inline

◆ ~PreemptGuard()

tk::PreemptGuard::~PreemptGuard ( )
inline

◆ PreemptGuard() [2/2]

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

Member Function Documentation

◆ operator=()

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

The documentation for this class was generated from the following file:
  • C:/Users/yoneda/Documents/Pico_Projects/tinykernel/tinykernel/include/tinykernel/kernel.hpp