Cleaning up the P/Invoke signatures for QPF and QPC to avoid marshalling and pinning...
authorTanner Gooding <tagoo@outlook.com>
Tue, 26 Mar 2019 15:48:03 +0000 (08:48 -0700)
committerJan Kotas <jkotas@microsoft.com>
Tue, 26 Mar 2019 21:09:50 +0000 (14:09 -0700)
* Cleaning up the P/Invoke signatures for QPF and QPC to avoid marshalling and pinning

* Responding to PR feedback.

* Dropping support for low resolution stopwatch

* Removing BestFitMapping=false

* Removing unneeded unsafe declarations

* Addressing more PR feedback

* Fixing the pal_time header file

* Fixing the Unix P/Invoke signatures for GetTimestamp and GetTimestampResolution to return ulong.

* Fixing GetTimestampResolution to scale the result for HAVE_CLOCK_MONOTONIC

Signed-off-by: dotnet-bot <dotnet-bot@microsoft.com>
src/System.Private.CoreLib/shared/Interop/Unix/System.Native/Interop.GetTimestamp.cs

index e791807..b57c0cd 100644 (file)
@@ -8,10 +8,10 @@ internal static partial class Interop
 {
     internal static partial class Sys
     {
-        [DllImport(Libraries.SystemNative, EntryPoint = "SystemNative_GetTimestampResolution")]
-        internal static extern bool GetTimestampResolution(out long resolution);
+        [DllImport(Libraries.SystemNative, EntryPoint = "SystemNative_GetTimestampResolution", ExactSpelling = true)]
+        internal static extern ulong GetTimestampResolution();
 
-        [DllImport(Libraries.SystemNative, EntryPoint = "SystemNative_GetTimestamp")]
-        internal static extern bool GetTimestamp(out long timestamp);
+        [DllImport(Libraries.SystemNative, EntryPoint = "SystemNative_GetTimestamp", ExactSpelling = true)]
+        internal static extern ulong GetTimestamp();
     }
 }