本文整理汇总了Java中com.ericsson.otp.erlang.OtpMbox类的典型用法代码示例。如果您正苦于以下问题:Java OtpMbox类的具体用法?Java OtpMbox怎么用?Java OtpMbox使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
OtpMbox类属于com.ericsson.otp.erlang包,在下文中一共展示了OtpMbox类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: start
import com.ericsson.otp.erlang.OtpMbox; //导入依赖的package包/类
private void start(final OtpErlangPid caller)
throws OtpAlreadyStartedException, OtpErlangExit {
final OtpMbox mbox;
if (this.name == null) {
mbox = this.host.createMbox();
} else if (this.host.whereis(this.name) == null) {
mbox = this.host.createMbox(this.name);
} else {
throw new OtpAlreadyStartedException(this.name);
}
this.mbox = mbox;
if (caller != null)
mbox.link(caller);
new Thread(this.name) {
@Override
public void run() {
loop();
jlog.fine("...leaving");
mbox.close();
}
}.start();
}
示例2: blockingRPC
import com.ericsson.otp.erlang.OtpMbox; //导入依赖的package包/类
public OtpErlangObject blockingRPC(OtpErlangAtom mod, OtpErlangAtom fun, OtpErlangList args) throws IOException, OtpErlangException {
OtpMbox mbox = self.createMbox();
try {
sendRPC(mbox, mod, fun, args);
return receiveResult(mbox);
}
finally {
mbox.close();
}
}
示例3: receiveResult
import com.ericsson.otp.erlang.OtpMbox; //导入依赖的package包/类
private OtpErlangObject receiveResult(OtpMbox mbox) throws OtpErlangExit, OtpErlangDecodeException {
OtpErlangObject message = mbox.receive(timeout);
if(message == null)
return null;
if(!(message instanceof OtpErlangTuple))
throw new RuntimeException("RPC response expected tuple but got " + message);
OtpErlangTuple tupleMessage = (OtpErlangTuple) message;
OtpErlangObject result = tupleMessage.elementAt(1);
return result;
}
示例4: sendRPC
import com.ericsson.otp.erlang.OtpMbox; //导入依赖的package包/类
public static void sendRPC(OtpConn conn, OtpMbox m, OtpErlangAtom mod, OtpErlangAtom fun, OtpErlangList args) throws IOException {
OtpErlangTuple rpcMessage = tuple(m.self(), tuple(CALL_ATOM, mod, fun, args, USER_ATOM));
conn.send(m.self(), "rex", rpcMessage);
}
示例5: sendRPC
import com.ericsson.otp.erlang.OtpMbox; //导入依赖的package包/类
private void sendRPC(OtpMbox m, OtpErlangAtom mod, OtpErlangAtom fun, OtpErlangList args) throws IOException {
OtpErlangTuple rpcMessage = tuple(m.self(), tuple(CALL_ATOM, mod, fun, args, USER_ATOM));
connection.send(m.self(), "rex", rpcMessage);
}
示例6: getMbox
import com.ericsson.otp.erlang.OtpMbox; //导入依赖的package包/类
protected final OtpMbox getMbox() {
return this.mbox;
}