我在一个简单的应用程序中使用CloudBees Syslog Java客户端将Syslog消息定期发送到服务器。一切正常,但我想知道-如果在每个循环上初始化TcpSyslogMessageSender-Class,它将在10次迭代后停止发送新消息,而没有任何异常。我可以轻松地更改它,并将对象初始化移到调用类的构造函数中,但是我想了解为什么会这样。从我的角度来看,我在每次迭代时都要初始化一个干净的新对象。垃圾收集应删除较旧的对象并释放使用的网络资源。但是也许这并不容易。 :)
while(true){
TcpSyslogMessageSender messageSender = new TcpSyslogMessageSender();
messageSender.setDefaultMessageHostname(...);
...
messageSender.sendMessage(msg);
}
想了解一下!
干杯
cmax