1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
<html dir="LTR">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252" />
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5" />
<title>RemotingAppender.SendBuffer Method</title>
<xml>
</xml>
<link rel="stylesheet" type="text/css" href="MSDN.css" />
</head>
<body id="bodyID" class="dtBODY">
<div id="nsbanner">
<div id="bannerrow1">
<table class="bannerparthead" cellspacing="0">
<tr id="hdr">
<td class="runninghead">log4net SDK Reference</td>
<td class="product">
</td>
</tr>
</table>
</div>
<div id="TitleRow">
<h1 class="dtH1">RemotingAppender.SendBufferMethod</h1>
</div>
</div>
<div id="nstext">
<p> Send the contents of the buffer to the remote sink. </p>
<div class="syntax">
<span class="lang">[VisualBasic]</span>
<br />OverridesProtectedSubSendBuffer( _<br />ByVal <i>events</i>As<a href="log4net.Core.LoggingEvent.html">LoggingEvent()</a>_<br />)</div>
<div class="syntax">
<span class="lang">[C#]</span>
<br />protectedoverride<a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemVoidClassTopic.asp">void</a>SendBuffer(<br /><a href="log4net.Core.LoggingEvent.html">LoggingEvent[]</a><i>events</i><br />);</div>
<h4 class="dtH4">Parameters</h4>
<dl>
<dt>
<i>events</i>
</dt>
<dd>The events to send.</dd>
</dl>
<h4 class="dtH4">Remarks</h4>
<p> The events are not sent immediately. They are scheduled to be sent using a pool thread. The effect is that the send occurs asynchronously. This is very important for a number of non obvious reasons. The remoting infrastructure will flow thread local variables (stored in the <a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemRuntimeRemotingMessagingCallContextClassTopic.asp">CallContext</a>), if they are marked as <a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemRuntimeRemotingMessagingILogicalThreadAffinativeClassTopic.asp">ILogicalThreadAffinative</a>, across the remoting boundary. If the server is not contactable then the remoting infrastructure will clear the <b>ILogicalThreadAffinative</b> objects from the <b>CallContext</b>. To prevent a logging failure from having side effects on the calling application the remoting call must be made from a separate thread to the one used by the application. A <a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfSystemThreadingThreadPoolClassTopic.asp">ThreadPool</a> thread is used for this. If no <b>ThreadPool</b> thread is available then the events will block in the thread pool manager until a thread is available. </p>
<h4 class="dtH4">See Also</h4>
<p>
<a href="log4net.Appender.RemotingAppender.html">RemotingAppender Class</a> | <a href="log4net.Appender.html">log4net.Appender Namespace</a></p>
<hr />
<div id="footer">
<p>
<a href="http://logging.apache.org/log4net">Copyright 2001-2006 The Apache Software Foundation.</a>
</p>
<p>Generated from assembly log4net [1.2.10.0]</p>
</div>
</div>
</body>
</html>
|