start()- start or continue one or more threads. This takes out of suspend mode and into run/evaluation mode.
start() and suspend() can be used as a very weak form of synchronization. Such use puts the onus on the programmer to know how to wake other threads up directly rather than having them signal a change in the value of a variable which the "would be suspended thread" can check and continue on given certain conditions. We include suspend() as a convenience and for completeness.
# establish two threads to be run later tA = thread(Quote(fit <- lm(x,y)), start=F) tB = thread(Quote(fit1 <- lm(x1,y1) ), start=F) .. .. # some more processing .. start(tA,tB) # start these two as simultaneously as possible
suspended.threads = suspend() synchronize() start(suspended.threads)