2012-02-28 57 views
3

有沒有辦法在並行的foreach調用中進入瀏覽器模式?我試圖用manual = TRUE創建一個集羣。正如預期的那樣,它需要我手動啓動R的實例。但是,一旦實例從主進程接收到一個任務,它就離開比賽,並且似乎不會在browser()命令中暫停。我想進入瀏覽器和R的檢查狀態帶有foreach的瀏覽器模式%dopar%

foreach(i = 1 : 5) %dopar% 
{ 
    browser() 
} 

這裏的RSCRIPT呼叫在手動模式下:

c:/.../bin/x64/Rscript" -e "parallel:::.slaveRSOCK()" MASTER=localhost PORT=10187 OUT= TIMEOUT=2592000 METHODS=TRUE 

回答

0

的解決方案是使用manual = TRUE,負載R的新實例(一個用於在集羣中的每個節點),並執行以下:

timeout = 2592000 
parallel:::.slaveRSOCK() 

所以基本上忽略RSCRIPT指令。

0

雖然它不是在?browser說,我預計browser只有作品在交互式會話中。

+0

也許可以修改手動= TRUE時顯示的rscript調用以使R以交互方式運行? – SFun28 2012-02-28 17:36:12

+0

我將rscript調用添加到我的原始文章 – SFun28 2012-02-28 17:45:47

+0

@ SFun28:您無法使R通過Rscript交互式運行。從'?Rscript':「選項'--slave --no-restore'總是被提供:這些意味着'--no-save'」。 – 2012-02-28 19:00:36