taskCallbackManager
位於 base
包(package)。 說明
這提供了一個完全R- 用於管理在每個頂級任務結束時調用的回調或操作的語言機製。本質上,我們注冊一個R來自該管理器的函數具有底層的本機 task-callback 機製,並且該函數在管理器的控製下處理調用其他 R 回調。該管理器由一組函數組成,這些函數訪問共享變量來管理 user-level 回調列表。
用法
taskCallbackManager(handlers = list(), registered = FALSE,
verbose = FALSE)
參數
handlers |
這可以是一個回調列表,其中每個元素都是一個列表,其中包含一個名為 |
registered |
一個邏輯值,指示 |
verbose |
一個邏輯值,如果是 |
值
list
包含 6 個函數:
add() |
向該管理器注冊一個回調,為該函數提供一個可選的第 5 個參數、一個可選名稱(通過該名稱將回調存儲在列表中)以及一個 |
remove() |
按名稱或位置/索引從管理器的回調集合中刪除元素。 |
evaluate() |
‘real’ 回調函數,已注冊到 C-level 調度機製,並在此管理器的控製範圍內調用每個 R-level 回調。 |
suspend() |
設置管理器掛起狀態的函數。如果它被掛起,則當任務完成時不會調用任何回調。通過為 |
register() |
使用內部 C-level 調度機製注冊 |
callbacks() |
返回此管理器維護的回調列表。 |
例子
# create the manager
h <- taskCallbackManager()
# add a callback
h$add(function(expr, value, ok, visible) {
cat("In handler\n")
return(TRUE)
}, name = "simpleHandler")
# look at the internal callbacks.
getTaskCallbackNames()
# look at the R-level callbacks
names(h$callbacks())
removeTaskCallback("R-taskCallbackManager")
參考
Duncan Temple Lang (2001) Top-level Task Callbacks in R, https://developer.r-project.org/TaskHandlers.pdf
也可以看看
addTaskCallback
、 removeTaskCallback
、 getTaskCallbackNames
和參考。
相關用法
- R taskCallback 添加或刪除頂級任務回調
- R taskCallbackNames 查詢當前內部頂級任務回調名稱
- R table 交叉表和表格創建
- R tabulate 向量列表
- R tapply 對不規則數組應用函數
- R toString 將 R 對象轉換為字符串或測試字符串
- R tilde 波形符運算符
- R try 嘗試允許錯誤恢複的表達式
- R transform 轉換對象,例如 DataFrame
- R textConnection 文本連接
- R tracemem 對象的跟蹤複製
- R traceback 獲取並打印調用堆棧
- R t 矩陣轉置
- R tempfile 為臨時文件創建名稱
- R typeof 對象的類型
- R trace 函數或方法調用的交互式跟蹤和調試
- R timezones 時區
- R trimws 刪除前導/尾隨空格
- R file.path 構造文件路徑
- R grep 模式匹配和替換
- R getwd 獲取或設置工作目錄
- R vector 向量 - 創建、強製等
- R lapply 對列表或向量應用函數
- R dump R 對象的文本表示
- R Sys.getenv 獲取環境變量
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Create an R-level Task Callback Manager。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。