2014-01-24 32 views
0

我通过sfLapply打了一个多线程调用,我在sfLapply中调用的函数打印了一些信息,如果单次调用,它会打印信息到屏幕,但是可以不在sfLapply,我该怎么办?如何打印'sfLapply`的输出调用R

> library(snow) 
> library(snowfall) 
> 
> sfInit(parallel=T,cpus=3) 

snowfall 1.84-6 initialized (using snow 0.3-13): parallel execution on 3 CPUs. 

> 
> test <-function(i) 
+ { 
+  sum = 0 
+  for(n in 1:i) 
+  { 
+   sum = n+sum 
+   print(sum) 
+  } 
+  print(sum) 
+ } 
> 
> df = c(1,2,3) 
> 
> test(2) #can print some output needed 
[1] 1 
[1] 3 
[1] 3 
> k = sfLapply(df,test) #print nothing 
> 

回答

0

我现在......有一个名为slaveOutfile可以捕捉的sfLapply输出信息的一个参数...

+0

我写了使用的MULT线程循环C++函数。但是当两个线程将输出发送给R时程序崩溃了。因为R不支持它。我不知道这个问题是否仍然存在。 – user1436187