ActorSystem java_为java中的actorsystem禁用akka.jvm-exit-on-fatal-error

我正在使用akka actor系统进行多线程处理.它在正常使用情况下工作正常.但是,Akka因致命错误而关闭了JVM.请告诉我如何配置Akka以禁用

java中的“akka.jvm-exit-on-fatal-error”.下面是代码.

public class QueueListener implements MessageListener {

private String _queueName=null;

public static boolean isActorinit=false;

public static ActorSystem system=null;

private ActorRef myActor;

public QueueListener(String actorId,String qName){

this._queueName = qName;

if(!isActorinit){

system=ActorSystem.create(actorId);

isActorinit=true;

}

myActor=system.actorOf( Props.create(MessageExecutor.class,qName),qName+"id");

}

/*

* (non-Javadoc)

* @see javax.jms.MessageListener#onMessage(javax.jms.Message)

*/

@Override

public void onMessage(Message msg) {

executeRequest(msg);

}

/** This method will process the message fetch by the listener.

*

* @param msg - javax.jms.Messages parameter get queue message

*/

private void executeRequest(Message msg){

String requestData=null;

try {

if(msg instanceof TextMessage){

TextMessage textMessage= (TextMessage) msg;

requestData = textMessage.getText().toString();

}else if(msg instanceof ObjectMessage){

ObjectMessage objMsg = (ObjectMessage) msg;

requestData = objMsg.getObject().toString();

}

myActor.tell(requestData,ActorRef.noSender());

} catch (JMSException e1) {

// TODO Auto-generated catch block

e1.printStackTrace();

}

}

}

在项目中创建application.conf文件(例如sr / main / resources)并添加以下内容:

akka {

jvm-exit-on-fatal-error = false

}

如果您已经有一个配置文件,则无需创建新配置文件,在这种情况下,它只是添加新条目:

jvm-exit-on-fatal-error = false

小心.让JVM像OutOfMemory这样的致命错误后运行通常不是一个好主意,并导致严重的问题.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值