Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / Net / System / Net / _BufferOffsetSize.cs / 1 / _BufferOffsetSize.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Net { // // this class is used by the BeginMultipleSend() API // to allow a user to send multiple buffers on a socket // internal class BufferOffsetSize { // // internal members // internal byte[] Buffer; internal int Offset; internal int Size; internal BufferOffsetSize(byte[] buffer, int offset, int size, bool copyBuffer) { GlobalLog.Assert(buffer != null && buffer.Length >= size + offset, "BufferOffsetSize::.ctor|Illegal parameters."); if (copyBuffer) { byte[] newBuffer = new byte[size]; System.Buffer.BlockCopy( buffer, // src offset, // src index newBuffer, // dest 0, // dest index size ); // total size to copy offset = 0; buffer = newBuffer; } Buffer = buffer; Offset = offset; Size = size; GlobalLog.Print("BufferOffsetSize#" + ValidationHelper.HashString(this) + "::.ctor() copyBuffer:" + copyBuffer.ToString() + " this:[" + ToString() + "]"); } /* // Consider removing. internal BufferOffsetSize(byte[] buffer, int offset, bool copyBuffer) : this(buffer, offset, buffer.Length - offset, copyBuffer) { } */ /* // Consider removing. internal BufferOffsetSize(int size, byte[] buffer, bool copyBuffer) : this(buffer, 0, size, copyBuffer) { } */ internal BufferOffsetSize(byte[] buffer, bool copyBuffer) : this(buffer, 0, buffer.Length, copyBuffer) { } #if TRAVE public override string ToString() { return "BufferOffsetSize#" + ValidationHelper.HashString(this) + " Buffer#" + ValidationHelper.HashString(Buffer) + " Offset:" + Offset.ToString() + " Size:" + Size.ToString(); } #endif } // class BufferOffsetSize } // namespace System.Net
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SecurityState.cs
- AttributeSetAction.cs
- ProviderSettingsCollection.cs
- CodeSnippetStatement.cs
- NumberSubstitution.cs
- UpdateManifestForBrowserApplication.cs
- InvalidProgramException.cs
- TrustManagerPromptUI.cs
- DataGridViewButtonCell.cs
- RequiredAttributeAttribute.cs
- dsa.cs
- LineBreakRecord.cs
- TileModeValidation.cs
- FontStyle.cs
- AppDomainFactory.cs
- DoubleAnimationClockResource.cs
- ConnectionPoolManager.cs
- Set.cs
- SqlCacheDependencyDatabase.cs
- TransformerConfigurationWizardBase.cs
- AssemblyFilter.cs
- TemplatedMailWebEventProvider.cs
- SecUtil.cs
- IntegrationExceptionEventArgs.cs
- DetailsViewDeleteEventArgs.cs
- PropertyChange.cs
- HTTPNotFoundHandler.cs
- OptimizerPatterns.cs
- OleDbStruct.cs
- ToolStripItemTextRenderEventArgs.cs
- SecureConversationSecurityTokenParameters.cs
- OrderingInfo.cs
- Main.cs
- CatalogPart.cs
- OracleBinary.cs
- PrintDocument.cs
- LexicalChunk.cs
- ToolStripItemTextRenderEventArgs.cs
- DbProviderManifest.cs
- RemotingAttributes.cs
- DataControlFieldCollection.cs
- DropTarget.cs
- CachedPathData.cs
- CodeSnippetExpression.cs
- HttpClientCertificate.cs
- MatrixTransform.cs
- BasePattern.cs
- webeventbuffer.cs
- DataContractSerializer.cs
- RoutedPropertyChangedEventArgs.cs
- HandlerBase.cs
- CopyOfAction.cs
- CheckBoxStandardAdapter.cs
- WebServiceHandler.cs
- RepeaterItemEventArgs.cs
- TCPListener.cs
- XamlSerializationHelper.cs
- Win32.cs
- DataColumnCollection.cs
- TrustSection.cs
- HitTestParameters.cs
- NameValueCollection.cs
- SourceSwitch.cs
- GridViewCancelEditEventArgs.cs
- PathStreamGeometryContext.cs
- TaskFileService.cs
- formatter.cs
- ArithmeticException.cs
- HashAlgorithm.cs
- EntityContainerAssociationSet.cs
- RelativeSource.cs
- FilteredAttributeCollection.cs
- SafeNativeMethods.cs
- XPathSelfQuery.cs
- QuaternionKeyFrameCollection.cs
- Size3DValueSerializer.cs
- ServiceControllerDesigner.cs
- IsolatedStorageFileStream.cs
- LinqExpressionNormalizer.cs
- DataSetUtil.cs
- Int32CollectionConverter.cs
- DocumentApplicationJournalEntry.cs
- ProgressBar.cs
- GPPOINT.cs
- AtlasWeb.Designer.cs
- DataGridColumnCollectionEditor.cs
- DataGridViewDataConnection.cs
- SchemaMerger.cs
- UriTemplateDispatchFormatter.cs
- _ProxyChain.cs
- QuaternionAnimation.cs
- ResourcePermissionBaseEntry.cs
- SingleAnimation.cs
- MethodBuilderInstantiation.cs
- HWStack.cs
- BitmapScalingModeValidation.cs
- Color.cs
- SqlProfileProvider.cs
- BrowserDefinitionCollection.cs
- RouteData.cs