本文整理汇总了C#中System.Net.Mail.SmtpConnection.EndFlush方法的典型用法代码示例。如果您正苦于以下问题:C# SmtpConnection.EndFlush方法的具体用法?C# SmtpConnection.EndFlush怎么用?C# SmtpConnection.EndFlush使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Net.Mail.SmtpConnection
的用法示例。
在下文中一共展示了SmtpConnection.EndFlush方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: BeginSend
internal static IAsyncResult BeginSend(SmtpConnection conn, AsyncCallback callback, object state)
{
MultiAsyncResult multiResult = new MultiAsyncResult(conn, callback, state);
multiResult.Enter();
IAsyncResult writeResult = conn.BeginFlush(s_onWrite, multiResult);
if (writeResult.CompletedSynchronously)
{
conn.EndFlush(writeResult);
multiResult.Leave();
}
SmtpReplyReader reader = conn.Reader.GetNextReplyReader();
multiResult.Enter();
//this actually does a read on the stream.
IAsyncResult result = reader.BeginReadLine(s_onReadLine, multiResult);
if (result.CompletedSynchronously)
{
LineInfo info = reader.EndReadLine(result);
if (!(multiResult.Result is Exception))
multiResult.Result = info;
multiResult.Leave();
}
multiResult.CompleteSequence();
return multiResult;
}
示例2: BeginSend
internal static IAsyncResult BeginSend(SmtpConnection conn, AsyncCallback callback, object state)
{
MultiAsyncResult result = new MultiAsyncResult(conn, callback, state);
result.Enter();
IAsyncResult result2 = conn.BeginFlush(onWrite, result);
if (result2.CompletedSynchronously)
{
conn.EndFlush(result2);
result.Leave();
}
SmtpReplyReader nextReplyReader = conn.Reader.GetNextReplyReader();
result.Enter();
IAsyncResult result3 = nextReplyReader.BeginReadLines(onReadLines, result);
if (result3.CompletedSynchronously)
{
LineInfo[] infoArray = conn.Reader.CurrentReader.EndReadLines(result3);
if (!(result.Result is Exception))
{
result.Result = infoArray;
}
result.Leave();
}
result.CompleteSequence();
return result;
}