[英]How to make a Gpars Actor to read from console
我有一個簡單的GPars演員:
class ConsoleActor extends DefaultActor {
protected void act() {
loop {
react { Msg msg ->
switch (msg.type) {
case MsgType.Read:
sender.send(System.console().readLine())
break
}
}
}
}
}
但是,當我嘗試發送一條消息以強制參與者從控制台讀取內容時,我得到了NPE:
Actor線程Actor線程3中發生異常java.lang.NullPointerException:無法在空對象上調用方法readLine()
為什么會發生這種情況,以及如何從GPars Actor中的控制台讀取?
我在這里找到了答案: StackOverflow-系統控制台返回null
class ConsoleActor extends DefaultActor {
protected void act() {
loop {
react { Msg msg ->
switch (msg.type) {
case MsgType.Read:
Scanner input = new Scanner(System.in);
String str = input.nextLine();
sender.send(str)
break
}
}
}
}
}
這個對我有用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.