Sau khi đọc về việc sử dụng react
trong các diễn viên ở Scala, tôi nghĩ rằng react
sẽ chia sẻ cùng một chuỗi cho rằng không có nhiều yêu cầu đang chờ xử lý của react
. Nó không có vẻ như vậy.Khi nào các chủ đề được tạo cho các phản ứng của diễn viên Scala?
import scala.actors.Actor
import scala.actors.Actor._
class SleepyReactor extends Actor {
def act() {
loop {
react {
case x => {
println("reacting to %s on thread %s".format(x, Thread.currentThread.getName))
Thread.sleep(1000)
println("done with " + x)
}
}
}
}
}
val sleepyOne = new SleepyReactor
sleepyOne.start
sleepyOne ! "first" // runs on thread-5
// wait until completion
sleepyOne ! "second" // runs on thread-3
Ai đó có thể giải thích tại sao những react
's đang chạy trên chủ đề khác nhau và khi một chủ đề mới được tạo ra cho một diễn viên với react
?
Tôi đọc ở đâu đó react
là sự kiện dựa trên và tôi đã làm điều đó có nghĩa là "tác nhân phản ứng" đã chia sẻ một chuỗi và nếu một "phản ứng" "các tác nhân phản ứng" khác sẽ được xếp hàng cho đến khi lần đầu tiên được thực hiện. Giờ tôi nghĩ mình sai rồi. Làm thế nào để làm việc này, và làm thế nào là nó khác với nhận được?
cũng thấy http://stackoverflow.com/questions/1251666/scala- diễn viên-nhận-vs-phản ứng –