zx_restricted_kick

摘要

退出受限模式的討論串。

宣告

#include <zircon/syscalls-next.h>

zx_status_t zx_restricted_kick(zx_handle_t thread, uint32_t options);

說明

如果執行緒目前在受限模式下執行,請將其從受限模式中移除;如果執行緒尚未執行,則儲存待處理啟動。如果目標執行緒以受限模式執行,就會透過提供給 zx_restricted_enter 的進入點結束一般模式,並將原因代碼設為 ZX_RESTRICTED_REASON_KICK。否則,下次對 zx_restricted_enter 呼叫時將不會進入受限模式,而是會分派給提供的進入點,並提供原因代碼 ZX_RESTRICTED_REASON_KICK

同一個執行緒物件上的多個啟動動作會收合在一起。因此,如果多個執行緒在執行或進入受限模式時,對相同目標呼叫 zx_restricted_kick,則至少會觀察到一個,但可能有多個 ZX_RESTRICTED_REASON_KICK 回傳。如要使用這項系統呼叫,建議您先記錄啟用同步資料結構的原因,然後呼叫 zx_restricted_kick。呼叫 zx_restricted_enter 的執行緒在觀察 ZX_RESTRICTED_REASON_KICK 並處理任何待處理狀態後,才會重新進入受限模式,應參照此資料結構。

options 必須為零。

權限

執行緒需要 ZX_RIGHT_MANAGE_THREAD

錯誤

ZX_ERR_INVALID_ARGS options 為 0 以外的任何值。ZX_ERR_WRONG_TYPE 執行緒並不是執行緒。ZX_ERR_ACCESS_DENIED 執行緒沒有 ZX_RIGHT_MANAGE_THREAD。 ZX_ERR_BAD_STATE 執行緒已失效。