﻿<html xmlns:MSHelp="http://msdn.microsoft.com/mshelp" xmlns:mshelp="http://msdn.microsoft.com/mshelp"><head><link rel="SHORTCUT ICON" href="./../icons/favicon.ico" /><style type="text/css">.OH_CodeSnippetContainerTabLeftActive, .OH_CodeSnippetContainerTabLeft,.OH_CodeSnippetContainerTabLeftDisabled { backgroundImageName: tabLeftBG.gif; }.OH_CodeSnippetContainerTabRightActive, .OH_CodeSnippetContainerTabRight,.OH_CodeSnippetContainerTabRightDisabled { backgroundImageName: tabRightBG.gif; }.OH_footer { backgroundImageName: footer_slice.gif; background-position: top; background-repeat: repeat-x; }</style><link rel="stylesheet" type="text/css" href="./../styles/branding.css" /><link rel="stylesheet" type="text/css" href="./../styles/branding-en-US.css" /><style type="text/css">
			body
			{
			border-left:5px solid #e6e6e6;
			overflow-x:scroll;
			overflow-y:scroll;
			}
		</style><script src="./../scripts/branding.js" type="text/javascript"><!----></script><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>BufferingAppenderSkeleton.BufferSize Property </title><meta name="Language" content="en-us" /><meta name="System.Keywords" content="BufferSize property" /><meta name="System.Keywords" content="BufferingAppenderSkeleton.BufferSize property" /><meta name="Microsoft.Help.F1" content="log4net.Appender.BufferingAppenderSkeleton.BufferSize" /><meta name="Microsoft.Help.F1" content="log4net.Appender.BufferingAppenderSkeleton.get_BufferSize" /><meta name="Microsoft.Help.F1" content="log4net.Appender.BufferingAppenderSkeleton.set_BufferSize" /><meta name="Microsoft.Help.Id" content="P:log4net.Appender.BufferingAppenderSkeleton.BufferSize" /><meta name="Description" content="Gets or sets the size of the cyclic buffer used to hold the logging events." /><meta name="Microsoft.Help.ContentType" content="Reference" /><meta name="BrandingAware" content="'true'" /><meta name="container" content="log4net.Appender" /><meta name="file" content="P_log4net_Appender_BufferingAppenderSkeleton_BufferSize" /><meta name="guid" content="P_log4net_Appender_BufferingAppenderSkeleton_BufferSize" /><link type="text/css" rel="stylesheet" href="ms-help://Hx/HxRuntime/HxLink.css" /><meta name="SelfBranded" content="true" /></head><body onload="onLoad()" class="primary-mtps-offline-document"><div class="OH_outerDiv"><div class="OH_outerContent"><table class="TitleTable"><tr><td class="OH_tdTitleColumn">BufferingAppenderSkeleton<span id="ID0EBBABAAA"> </span><script type="text/javascript">
					addToLanSpecTextIdSet("ID0EBBABAAA?vb=.|cpp=::|cs=.|fs=.|nu=.");
				</script>BufferSize Property </td><td class="OH_tdRunningTitleColumn">Apache log4net™ SDK Documentation</td></tr></table><div id="mainSection"><div id="mainBody"><span class="introStyle"></span><div class="summary">
            Gets or sets the size of the cyclic buffer used to hold the 
            logging events.
            </div><p></p><b>Namespace:</b> <a href="N_log4net_Appender.htm" target="">log4net.Appender</a><br /><b>Assembly:</b> <span sdata="assembly">log4net</span> (in log4net.dll) Version: 1.2.15.0 (1.2.15.0)<div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Syntax</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"></div><div id="snippetGroup_Syntax" class="code"><div id="ID0ECFDAAAAA" class="OH_CodeSnippetContainer"><div class="OH_CodeSnippetContainerTabs" id="ID0ECFDAAAAA_tabs"><div class="OH_CodeSnippetContainerTabLeftActive" id="ID0ECFDAAAAA_tabimgleft"></div><div id="ID0ECFDAAAAA_tab1" class="OH_CodeSnippetContainerTabActive" EnableCopyCode="true"><a href="#" onclick="javascript:ChangeTab('ID0ECFDAAAAA','C#','1','4');return false;">C#</a></div><div id="ID0ECFDAAAAA_tab2" class="OH_CodeSnippetContainerTab" EnableCopyCode="true"><a href="#" onclick="javascript:ChangeTab('ID0ECFDAAAAA','Visual Basic','2','4');return false;">VB</a></div><div id="ID0ECFDAAAAA_tab3" class="OH_CodeSnippetContainerTab" EnableCopyCode="true"><a href="#" onclick="javascript:ChangeTab('ID0ECFDAAAAA','Visual C++','3','4');return false;">C++</a></div><div id="ID0ECFDAAAAA_tab4" class="OH_CodeSnippetContainerTabDisabledNotFirst" EnableCopyCode="true" disabled="true"><a>F#</a></div><div class="OH_CodeSnippetContainerTabRight" id="ID0ECFDAAAAA_tabimgright"></div></div><div id="ID0ECFDAAAAA_codecollection" class="OH_CodeSnippetContainerCodeCollection"><div class="OH_CodeSnippetToolBar"><div class="OH_CodeSnippetToolBarText"><a id="ID0ECFDAAAAA_ViewColorized" href="#" onclick="javascript:ExchangeTitleContent('ID0ECFDAAAAA','4')" title="View Colorized" style="display: none">View Colorized</a><a id="ID0ECFDAAAAA_copycode" href="#" onclick="javascript:CopyToClipboard('ID0ECFDAAAAA','4')" title="Copy to Clipboard">Copy to Clipboard</a><a id="ID0ECFDAAAAA_PrintText" class="OH_PrintText" href="#" onclick="javascript:Print('ID0ECFDAAAAA','4')" title="Print">Print</a></div></div><div id="ID0ECFDAAAAA_code_Div1" class="OH_CodeSnippetContainerCode" style="display: block"><pre><span class="keyword">public</span> <span class="identifier">int</span> <span class="identifier">BufferSize</span> { <span class="keyword">get</span>; <span class="keyword">set</span>; }</pre></div><div id="ID0ECFDAAAAA_code_Plain_Div1" class="OH_CodeSnippetContainerCode" style="display: none"><pre>public int BufferSize { get; set; }</pre></div><div id="ID0ECFDAAAAA_code_Div2" class="OH_CodeSnippetContainerCode" style="display: none"><pre><span class="keyword">Public</span> <span class="keyword">Property</span> <span class="identifier">BufferSize</span> <span class="keyword">As</span> <span class="identifier">Integer</span> 
	<span class="keyword">Get</span> 
	<span class="keyword">Set</span></pre></div><div id="ID0ECFDAAAAA_code_Plain_Div2" class="OH_CodeSnippetContainerCode" style="display: none"><pre>Public Property BufferSize As Integer 
	Get 
	Set</pre></div><div id="ID0ECFDAAAAA_code_Div3" class="OH_CodeSnippetContainerCode" style="display: none"><pre><span class="keyword">public</span>:
<span class="keyword">property</span> <span class="identifier">int</span> <span class="identifier">BufferSize</span> {
	<span class="identifier">int</span> <span class="keyword">get</span> ();
	<span class="keyword">void</span> <span class="keyword">set</span> (<span class="identifier">int</span> <span class="parameter">value</span>);
}</pre></div><div id="ID0ECFDAAAAA_code_Plain_Div3" class="OH_CodeSnippetContainerCode" style="display: none"><pre>public:
property int BufferSize {
	int get ();
	void set (int value);
}</pre></div><div id="ID0ECFDAAAAA_code_Div4" class="OH_CodeSnippetContainerCode" style="display: none"><pre /></div><div id="ID0ECFDAAAAA_code_Plain_Div4" class="OH_CodeSnippetContainerCode" style="display: none"><pre /></div></div></div><script>addSpecificTextLanguageTagSet('ID0ECFDAAAAA');</script></div><h4 class="subHeading">Property Value</h4>Type: <img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /><a href="http://msdn2.microsoft.com/en-us/library/td2s409d" target="_blank">Int32</a><br />
            The size of the cyclic buffer used to hold the logging events.
            <div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">Remarks</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"></div><p>
            The <span class="selflink">BufferSize</span> option takes a positive integer
            representing the maximum number of logging events to collect in 
            a cyclic buffer. When the <span class="selflink">BufferSize</span> is reached,
            oldest events are deleted as new events are added to the
            buffer. By default the size of the cyclic buffer is 512 events.
            </p><p>
            If the <span class="selflink">BufferSize</span> is set to a value less than
            or equal to 1 then no buffering will occur. The logging event
            will be delivered synchronously (depending on the <a href="P_log4net_Appender_BufferingAppenderSkeleton_Lossy.htm" target="">Lossy</a>
            and <a href="P_log4net_Appender_BufferingAppenderSkeleton_Evaluator.htm" target="">Evaluator</a> properties). Otherwise the event will
            be buffered.
            </p><a name="seeAlsoSection"><!----></a><div class="OH_CollapsibleAreaRegion"><div class="OH_regiontitle">See Also</div><div class="OH_CollapsibleArea_HrDiv"><hr class="OH_CollapsibleArea_Hr" /></div></div><div class="OH_clear"></div><div class="seeAlsoStyle"><a href="T_log4net_Appender_BufferingAppenderSkeleton.htm" target="">BufferingAppenderSkeleton Class</a></div><div class="seeAlsoStyle"><a href="AllMembers_T_log4net_Appender_BufferingAppenderSkeleton.htm" target="">BufferingAppenderSkeleton Members</a></div><div class="seeAlsoStyle"><a href="N_log4net_Appender.htm" target="">log4net.Appender Namespace</a></div></div></div></div></div><div id="OH_footer" class="OH_footer"><p>Apache log4net, Apache and log4net are trademarks of The Apache Software Foundation.</p><p><a href="http://logging.apache.org/log4net/" target="_blank"><img src="./../icons/online_icon.gif" class="OH_offlineIcon" alt="Online" title="Online" /> 
						Copyright 2004-2015 The Apache Software Foundation (http://logging.apache.org/log4net/)</a></p><div class="OH_feedbacklink"><a href="mailto:http://logging.apache.org/log4net/mail-lists.html?subject=Apache+log4net%e2%84%a2+SDK+Documentation+BufferingAppenderSkeleton.BufferSize+Property++100+EN-US&amp;body=Your%20feedback%20is%20used%20to%20improve%20the%20documentation%20and%20the%20product.%20Your%20e-mail%20address%20will%20not%20be%20used%20for%20any%20other%20purpose%20and%20is%20disposed%20of%20after%20the%20issue%20you%20report%20is%20resolved.%20While%20working%20to%20resolve%20the%20issue%20that%20you%20report%2c%20you%20may%20be%20contacted%20via%20e-mail%20to%20get%20further%20details%20or%20clarification%20on%20the%20feedback%20you%20sent.%20After%20the%20issue%20you%20report%20has%20been%20addressed%2c%20you%20may%20receive%20an%20e-mail%20to%20let%20you%20know%20that%20your%20feedback%20has%20been%20addressed.">Send Feedback</a> on this topic to http://logging.apache.org/log4net/mail-lists.html.</div></div></body></html>