上下文: 這是一個客戶端服務器應用程序。目前的EJB的樣子:在Glassfish EAR中使用Akka進行多線程可能嗎?
public class ServerSideJob {
@WebMethod(operationName = "launchJob")
public String launchJob(@WebParam(name = "idUser") String idUser, @WebParam(name = "name") String name, @WebParam(name = "param") Object param) {
Runnable controller = new JobController(screenName, fof, mm, job);
new Thread(controller).start();
return "job launched";
}
}
作業已啓動其他幾個線程。
在這一點上,我想增加客戶端中斷工作的可能性。中斷從「外部」的線程是相當a dirty affair(我不得不爲每個操作添加更多的調用到一個分貝爲此),這會提示我切換到多線程Akka。
問題:我不確定如何將Akka邏輯與上面的EJB代碼合併。我如何從launchJob函數中調用層次結構的頂級演員? (好吧,當然是noob問題...)
public class ServerSideJob {
@WebMethod(operationName = "launchJob")
public String launchJob(@WebParam(name = "idUser") String idUser, @WebParam(name = "name") String name, @WebParam(name = "param") Object param) {
//how do I call my Akka actor here?
return "job launched";
}
}
我不太瞭解阿卡,但我認爲阻止演員比阻止線索更容易。畢竟,演員是在線程之上實現的。 –
您可以隨時向演員發送一條消息 - 傳播他們的死亡或任何您希望看到他們做的事情。 – seinecle
注意:我也不太瞭解阿卡,所以我不假裝是正確的,這只是我的理解。 – seinecle