Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / System.Runtime.DurableInstancing / System / Runtime / Ticks.cs / 1305376 / Ticks.cs
//----------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//---------------------------------------------------------------------------
namespace System.Runtime
{
using System.Security;
using System.Runtime.Interop;
static class Ticks
{
public static long Now
{
[Fx.Tag.SecurityNote(Miscellaneous = "Why isn't the SuppressUnmanagedCodeSecurity attribute working in this case?")]
[SecuritySafeCritical]
get
{
long time;
#pragma warning disable 1634
#pragma warning suppress 56523 // function has no error return value
#pragma warning restore 1634
UnsafeNativeMethods.GetSystemTimeAsFileTime(out time);
return time;
}
}
public static long FromMilliseconds(int milliseconds)
{
return checked((long)milliseconds * TimeSpan.TicksPerMillisecond);
}
public static int ToMilliseconds(long ticks)
{
return checked((int)(ticks / TimeSpan.TicksPerMillisecond));
}
public static long FromTimeSpan(TimeSpan duration)
{
return duration.Ticks;
}
public static TimeSpan ToTimeSpan(long ticks)
{
return new TimeSpan(ticks);
}
public static long Add(long firstTicks, long secondTicks)
{
if (firstTicks == long.MaxValue || firstTicks == long.MinValue)
{
return firstTicks;
}
if (secondTicks == long.MaxValue || secondTicks == long.MinValue)
{
return secondTicks;
}
if (firstTicks >= 0 && long.MaxValue - firstTicks <= secondTicks)
{
return long.MaxValue - 1;
}
if (firstTicks <= 0 && long.MinValue - firstTicks >= secondTicks)
{
return long.MinValue + 1;
}
return checked(firstTicks + secondTicks);
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//----------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation. All rights reserved.
//---------------------------------------------------------------------------
namespace System.Runtime
{
using System.Security;
using System.Runtime.Interop;
static class Ticks
{
public static long Now
{
[Fx.Tag.SecurityNote(Miscellaneous = "Why isn't the SuppressUnmanagedCodeSecurity attribute working in this case?")]
[SecuritySafeCritical]
get
{
long time;
#pragma warning disable 1634
#pragma warning suppress 56523 // function has no error return value
#pragma warning restore 1634
UnsafeNativeMethods.GetSystemTimeAsFileTime(out time);
return time;
}
}
public static long FromMilliseconds(int milliseconds)
{
return checked((long)milliseconds * TimeSpan.TicksPerMillisecond);
}
public static int ToMilliseconds(long ticks)
{
return checked((int)(ticks / TimeSpan.TicksPerMillisecond));
}
public static long FromTimeSpan(TimeSpan duration)
{
return duration.Ticks;
}
public static TimeSpan ToTimeSpan(long ticks)
{
return new TimeSpan(ticks);
}
public static long Add(long firstTicks, long secondTicks)
{
if (firstTicks == long.MaxValue || firstTicks == long.MinValue)
{
return firstTicks;
}
if (secondTicks == long.MaxValue || secondTicks == long.MinValue)
{
return secondTicks;
}
if (firstTicks >= 0 && long.MaxValue - firstTicks <= secondTicks)
{
return long.MaxValue - 1;
}
if (firstTicks <= 0 && long.MinValue - firstTicks >= secondTicks)
{
return long.MinValue + 1;
}
return checked(firstTicks + secondTicks);
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- WorkflowApplicationException.cs
- VariableQuery.cs
- ResourceReferenceExpression.cs
- ProjectionPlan.cs
- NetworkInformationException.cs
- UriSection.cs
- AttachmentCollection.cs
- ReadingWritingEntityEventArgs.cs
- DataGridViewColumnDesigner.cs
- EventLogPermissionHolder.cs
- TemplateField.cs
- BoolExpression.cs
- ToolStripArrowRenderEventArgs.cs
- TemplateBindingExtensionConverter.cs
- ResXResourceReader.cs
- Shape.cs
- StylusEventArgs.cs
- SafeCryptoKeyHandle.cs
- XmlPropertyBag.cs
- BaseContextMenu.cs
- Transform3DCollection.cs
- CodeTryCatchFinallyStatement.cs
- InputDevice.cs
- TransactionFilter.cs
- WindowsRichEditRange.cs
- XmlDataContract.cs
- Model3DGroup.cs
- StructuralType.cs
- ErrorWrapper.cs
- DrawingState.cs
- EpmContentSerializer.cs
- ClaimSet.cs
- PackageDigitalSignatureManager.cs
- TransportOutputChannel.cs
- COM2TypeInfoProcessor.cs
- LongSumAggregationOperator.cs
- AmbientEnvironment.cs
- RuntimeResourceSet.cs
- HttpDebugHandler.cs
- CompositeActivityDesigner.cs
- LinkedResource.cs
- ThicknessAnimation.cs
- ColumnPropertiesGroup.cs
- ToolboxComponentsCreatingEventArgs.cs
- ResponseBodyWriter.cs
- BulletedListEventArgs.cs
- RegularExpressionValidator.cs
- WebBrowserHelper.cs
- Quad.cs
- CommandManager.cs
- OutputCacheProfileCollection.cs
- WebPartMovingEventArgs.cs
- PrintingPermissionAttribute.cs
- SourceChangedEventArgs.cs
- VarInfo.cs
- XmlSerializationWriter.cs
- OnOperation.cs
- RegexReplacement.cs
- ObjectDataSourceMethodEventArgs.cs
- EditBehavior.cs
- MapPathBasedVirtualPathProvider.cs
- InternalDispatchObject.cs
- InteropBitmapSource.cs
- MyContact.cs
- SerialPinChanges.cs
- FontUnitConverter.cs
- NotCondition.cs
- DataMemberListEditor.cs
- DataListComponentEditor.cs
- EntityDataSourceWrapperCollection.cs
- EventMappingSettingsCollection.cs
- ChangePasswordAutoFormat.cs
- SubstitutionResponseElement.cs
- XmlSerializerFactory.cs
- Int16Converter.cs
- StylusDevice.cs
- XmlMembersMapping.cs
- AttributeCollection.cs
- AnimatedTypeHelpers.cs
- storepermission.cs
- DesignerVerbCollection.cs
- RenderData.cs
- DesignTimeDataBinding.cs
- PerspectiveCamera.cs
- RoleGroup.cs
- DataGridViewDataErrorEventArgs.cs
- ApplicationActivator.cs
- QilIterator.cs
- XsdDuration.cs
- AdvancedBindingEditor.cs
- IndentedWriter.cs
- OleDbRowUpdatingEvent.cs
- XmlDocumentSchema.cs
- FloatUtil.cs
- LocalizeDesigner.cs
- SizeAnimation.cs
- SqlInternalConnection.cs
- DesignerSerializationManager.cs
- DataGridViewToolTip.cs
- XmlSchemaType.cs