\doxysection{tk::Preempt\+Guard クラス} \label{classtk_1_1_preempt_guard}\index{tk::PreemptGuard@{tk::PreemptGuard}} プリエンプション禁止をスコープ単位で安全に管理する RAII クラス {\ttfamily \+\#include $<$kernel.\+hpp$>$} \doxysubsubsection*{公開メンバ関数} \begin{DoxyCompactItemize} \item \textbf{ Preempt\+Guard} () \item \textbf{ $\sim$\+Preempt\+Guard} () \item \textbf{ Preempt\+Guard} (const Preempt\+Guard \&)=delete \item \textbf{ Preempt\+Guard} \& \textbf{ operator=} (const \textbf{ Preempt\+Guard} \&)=delete \end{DoxyCompactItemize} \doxysubsection{詳解} プリエンプション禁止をスコープ単位で安全に管理する RAII クラス 生成時に自動で {\ttfamily \doxyref{tk::\+preempt\+\_\+disable()}{p.}{namespacetk_a3254a7e2a9f5ed3abe44e8cf62a8dcfe}} を呼び、スコープを抜けた際に自動で {\ttfamily \doxyref{tk::\+preempt\+\_\+enable()}{p.}{namespacetk_a70e6ee5f456e67a24ce13ff0fd04e4d9}} を呼びます。 \begin{DoxyCode}{0} \DoxyCodeLine{\{} \DoxyCodeLine{\ \ \ \ tk::PreemptGuard\ guard;} \DoxyCodeLine{\ \ \ \ \textcolor{comment}{//\ この区間はタスクスイッチが発生しない\ (I2C/SPI通信などに最適)}} \DoxyCodeLine{\ \ \ \ i2c\_write\_blocking(...);} \DoxyCodeLine{\}\ \textcolor{comment}{//\ 自動でタスクスイッチが再開}} \end{DoxyCode} \label{classtk_1_1_preempt_guard_doc-constructors} \doxysubsection{構築子と解体子} \index{tk::PreemptGuard@{tk::PreemptGuard}!PreemptGuard@{PreemptGuard}} \index{PreemptGuard@{PreemptGuard}!tk::PreemptGuard@{tk::PreemptGuard}} \doxysubsubsection{PreemptGuard()\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} {\footnotesize\ttfamily \label{classtk_1_1_preempt_guard_a39e396ce51420c942e7d6549ec63f88e} tk::\+\+Preempt\+Guard::\+\+Preempt\+Guard (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} \index{tk::PreemptGuard@{tk::PreemptGuard}!````~PreemptGuard@{$\sim$PreemptGuard}} \index{````~PreemptGuard@{$\sim$PreemptGuard}!tk::PreemptGuard@{tk::PreemptGuard}} \doxysubsubsection{$\sim$PreemptGuard()} {\footnotesize\ttfamily \label{classtk_1_1_preempt_guard_a329ea4d806861d9455168aeb01f41f86} tk::\+\+Preempt\+Guard::\+$\sim$\+Preempt\+Guard (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}} \index{tk::PreemptGuard@{tk::PreemptGuard}!PreemptGuard@{PreemptGuard}} \index{PreemptGuard@{PreemptGuard}!tk::PreemptGuard@{tk::PreemptGuard}} \doxysubsubsection{PreemptGuard()\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} {\footnotesize\ttfamily \label{classtk_1_1_preempt_guard_a360ac2b073064abc0f21db3127e7f389} tk::\+\+Preempt\+Guard::\+\+Preempt\+Guard (\begin{DoxyParamCaption}\item[{const Preempt\+Guard \&}]{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [delete]}} \label{classtk_1_1_preempt_guard_doc-func-members} \doxysubsection{関数詳解} \index{tk::PreemptGuard@{tk::PreemptGuard}!operator=@{operator=}} \index{operator=@{operator=}!tk::PreemptGuard@{tk::PreemptGuard}} \doxysubsubsection{operator=()} {\footnotesize\ttfamily \label{classtk_1_1_preempt_guard_ad651c301bd81f95866e1cd380c2a2417} \textbf{ Preempt\+Guard} \& tk::\+\+Preempt\+Guard::\+operator= (\begin{DoxyParamCaption}\item[{const \textbf{ Preempt\+Guard} \&}]{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [delete]}} このクラス詳解は次のファイルから抽出されました:\begin{DoxyCompactItemize} \item C:\+/\+\+Users/\+yoneda/\+\+Documents/\+\+Pico\+\_\+\+Projects/\+tinykernel/\+tinykernel/\+include/\+tinykernel/\textbf{ kernel.\+hpp}\end{DoxyCompactItemize}