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
- KnownIds.cs
- EqualityComparer.cs
- FileCodeGroup.cs
- CodeDomConfigurationHandler.cs
- XMLUtil.cs
- TextProviderWrapper.cs
- ForceCopyBuildProvider.cs
- RegexRunnerFactory.cs
- BidOverLoads.cs
- StatusBarPanelClickEvent.cs
- KeyboardEventArgs.cs
- HostingEnvironmentException.cs
- Stackframe.cs
- UnhandledExceptionEventArgs.cs
- securitycriticaldata.cs
- OleAutBinder.cs
- TrustManagerPromptUI.cs
- Stroke.cs
- DropShadowBitmapEffect.cs
- CompilerGlobalScopeAttribute.cs
- DashStyle.cs
- HMACMD5.cs
- HierarchicalDataTemplate.cs
- CssTextWriter.cs
- OleDbErrorCollection.cs
- ColumnWidthChangingEvent.cs
- PackWebResponse.cs
- EmptyCollection.cs
- DefaultAssemblyResolver.cs
- XmlSchemaAll.cs
- SafeNativeMethods.cs
- activationcontext.cs
- SecurityContextCookieSerializer.cs
- OLEDB_Util.cs
- QuaternionConverter.cs
- RNGCryptoServiceProvider.cs
- InvalidOperationException.cs
- OleDbException.cs
- OlePropertyStructs.cs
- AsyncCompletedEventArgs.cs
- CompiledELinqQueryState.cs
- AnnotationComponentChooser.cs
- SQLMembershipProvider.cs
- CalendarSelectionChangedEventArgs.cs
- StrongName.cs
- TimeZone.cs
- TextDpi.cs
- FlowDocumentPageViewerAutomationPeer.cs
- ResourceFallbackManager.cs
- FontWeightConverter.cs
- NamedObject.cs
- CultureMapper.cs
- SqlRemoveConstantOrderBy.cs
- ScriptReferenceEventArgs.cs
- ToolStripSettings.cs
- SmiXetterAccessMap.cs
- PartialArray.cs
- RegisteredDisposeScript.cs
- DirectoryInfo.cs
- TableLayoutColumnStyleCollection.cs
- ProtocolElementCollection.cs
- CollectionViewGroupInternal.cs
- OperandQuery.cs
- TaskHelper.cs
- NonDualMessageSecurityOverHttpElement.cs
- Point3DCollection.cs
- DeflateStreamAsyncResult.cs
- ZipIOExtraFieldPaddingElement.cs
- PrintingPermission.cs
- Registry.cs
- StickyNoteContentControl.cs
- SplitterPanel.cs
- PeerCollaboration.cs
- Item.cs
- TransactionManager.cs
- Bidi.cs
- ThrowHelper.cs
- SafeCryptoKeyHandle.cs
- Serializer.cs
- ObjectDataSourceView.cs
- isolationinterop.cs
- UnionExpr.cs
- BatchServiceHost.cs
- DiscreteKeyFrames.cs
- MembershipUser.cs
- BufferedStream.cs
- RawKeyboardInputReport.cs
- Converter.cs
- BridgeDataReader.cs
- BooleanSwitch.cs
- OLEDB_Enum.cs
- PreservationFileWriter.cs
- DataBinding.cs
- ColorConvertedBitmapExtension.cs
- DataRecordObjectView.cs
- CheckBoxPopupAdapter.cs
- GridViewCancelEditEventArgs.cs
- TextTreeTextElementNode.cs
- CursorConverter.cs
- DataGridColumnHeadersPresenterAutomationPeer.cs