Chilkat IMAP服务在使用它的Windows服务正常执行几天后停留在100%CPU上。它每隔几天(3-7天)被复制一次。
我使用Chilkat IAMP for .NET 4.5版本9.5.0 64位。
我通过c#代码中止的方式是(它在迭代的每一端运行一次):
if (imapCon != null)
{
if (imapCon.IsLoggedIn())
{
imapCon.Logout();
}
if (imapCon.IsConnected())
{
imapCon.Disconnect();
}
imapCon.Dispose();
imapCon = null;
}
从日志中我得到:WSAECONNABORTED已建立的连接已被主机中的软件中止。
运行它的服务驻留在虚拟云环境中。
这是Chilkat IMAP连接如何实现,云环境实现或来自我的服务(使用Chilkat模块的应用程序)的问题......?
以下是Chilkat日志:
DllDate:2014年5月6日
ChilkatVersion:9.5.0.38
UnlockPrefix:SNILIKIMAPMAIL
用户名:WIN-OCJD4A0985E:SYSTEM
建筑:Little Endian; 64位
语言:.NET 4.5 / x64
详细记录:0
listMailboxes:
bSubscribedOnly:0参考:
邮箱:*
转发邮箱名称中的引号和反斜杠...
utf7EncodedMailboxPath:*
getCompleteResponse:
WindowsError: An established connection was aborted by the software in your host machine. WindowsErrorCode: 0x2745 numBytesRequested: 5 Failed to receive data on the TCP socket Failed to read beginning of SSL/TLS record. Failed to read incoming handshake messages. (3) (leaveContext) Client handshake failed. (3) (leaveContext)
ConnectFailReason:0
(leaveContext)failReason:0
连接失败。
(leaveContext)登录:
DllDate:2014年5月6日
ChilkatVersion:9.5.0.38
UnlockPrefix:SNILIKIMAPMAIL
用户名:WIN-OCJD4A0985E:SYSTEM
建筑:Little Endian; 64位
语言:.NET 4.5 / x64
详细记录:0
登录: **
ConnectionType:SSL / TLS
在套接字(1)上发送错误
SocketError:WSAECONNABORTED已建立的连接已中止 主机上的软件。
有关更多信息,请参阅此Chilkat博客文章: http://www.cknotes.com/?p=91
send_size:90
无法发送TLS消息。
无法发送LOGIN命令
失败。
答案 0 :(得分:1)
如果Chilkat方法调用永远不会返回并使用100%的CPU,那么您将无法获取LastErrorText的内容(这是您提供的Chilkat日志)。你有一个LastErrorText的事实表明Chilkat方法调用已经返回,然后你的应用程序继续显示LastErrorText。
我的猜测是你的应用程序有一个循环,通常一个Chilkat方法调用涉及与IMAP邮件服务器的通信成功(与服务器通信花费的正常时间),但由于某种原因,方法调用开始返回立即失败的状态。那时,我怀疑你的应用程序可能是一个紧密的循环,一遍又一遍地调用Chilkat方法。 100%的CPU利用率可能是由应用程序中的循环引起的,而不是通过调用Chilkat方法中的代码引起的。