children
位於 parallel
包(package)。 說明
這些是分叉方法的低級支持函數。
它們在 Windows 上不可用,並且不會從命名空間導出。
用法
children(select)
readChild(child)
readChildren(timeout = 0)
selectChildren(children = NULL, timeout = 0)
sendChildStdin(child, what)
sendMaster(what, raw.asis = TRUE)
mckill(process, signal = 2L)
參數
select |
如果省略,則返回所有活動子進程,否則 |
child |
子進程( |
timeout |
放棄之前等待響應的超時(以秒為單位,支持分數)。 |
children |
子進程列表或單個子進程對象或進程 ID 向量或 |
what |
為了 為了 |
raw.asis |
邏輯上,如果 |
process |
進程( |
signal |
整數:要發送的信號。值 2 (SIGINT)、9 (SIGKILL) 和 15 (SIGTERM) 非常可移植,但為了獲得最大的可移植性,請使用 |
細節
children
返回當前活動的子級。
readChild
從給定的子進程讀取數據(由 sendMaster
發送)。
selectChildren
檢查子級是否有可用數據。
readChildren
檢查所有子級是否有可用數據,並從第一個具有可用數據的子級讀取。
sendChildStdin
將字符串(或數據)發送到一個或多個子級的標準輸入。請注意,如果主會話是交互式的,它也會在主進程的標準輸出上回顯(除非禁用)。該函數是vector-compatible,因此您可以將child
指定為進程ID的列表或向量。
sendMaster
將數據從子進程發送到主進程。
mckill
向子進程發送信號:相當於 tools
包中的 pskill
。
值
children
返回類 "process"
的對象列表(可能為空),即進程 ID。
如果數據可用,readChild
和 readChildren
返回帶有 "pid"
屬性的原始向量;如果子進程終止,則返回長度為 1 且帶有進程 ID 的整數向量;如果子進程不再存在,則返回 NULL
(此時沒有子進程)全部用於readChildren
)。
如果達到超時,則 selectChildren
返回 TRUE
;如果發生錯誤(例如,如果主進程被中斷),則返回 FALSE
或具有可用數據的子進程的進程 ID 的整數向量;如果存在,則返回 NULL
沒有孩子。
sendChildStdin
返回 TRUE
值的向量(child
的每個成員一個)或引發錯誤。
sendMaster
返回TRUE
或引發錯誤。
mckill
返回 TRUE
。
警告
這是一個非常低級的接口,僅供專家使用:它不被視為RAPI 如有更改,恕不另行通知。
sendMaster
,readChild
和sendChildStdin
之前不支持長向量R3.4.0 等僅限於 字節(並且仍然在 32 位平台上)。
例子
## Not run:
p <- mcparallel(scan(n = 1, quiet = TRUE))
sendChildStdin(p, "17.4\n")
mccollect(p)[[1]]
## End(Not run)
作者
Simon Urbanek and R Core.
Derived from the multicore
package formerly on CRAN.
也可以看看
相關用法
- R clusterApply 使用集群應用操作
- R pvec 使用 Forking 並行化向量映射函數
- R makeCluster 創建並行套接字集群
- R RNGstreams Pierre L'Ecuyer 的 RngStreams 的實施
- R detectCores 檢測CPU核心數
- R mcparallel 在單獨的進程中異步計算 R 表達式
- R mcfork 分叉當前 R 進程的副本
- R mcaffinity 獲取或設置當前進程的CPU親和性掩碼
- R mclapply 使用 Forking 的 lapply 和 mapply 並行版本
- R splitIndices 劃分任務在集群中分布
- R SparkR partitionBy用法及代碼示例
- R purrr accumulate 累積向量縮減的中間結果
- R purrr imap 將函數應用於向量的每個元素及其索引
- R purrr list_transpose 轉置列表
- R purrr as_vector 將列表強製轉換為向量
- R purrr map_if 有條件地將函數應用於向量的每個元素
- R purrr map2 映射兩個輸入
- R purrr map_depth 在給定深度映射/修改元素
- R SparkR printSchema用法及代碼示例
- R purrr list_simplify 將列表簡化為原子或 S3 向量
- R purrr rerun 多次重新運行表達式
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Low-level Functions for Management of Forked Processes。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。