Skip to content

Commit 6059795

Browse files
committed
wip
1 parent cfdeb36 commit 6059795

File tree

2 files changed

+11
-14
lines changed

2 files changed

+11
-14
lines changed

src/Compiler/Utilities/Async2.fs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -481,9 +481,9 @@ module Async2 =
481481

482482
let inline start ct (code: Async2<_>) =
483483

484-
let immediate =
485-
isNull SynchronizationContext.Current
486-
&& TaskScheduler.Current = TaskScheduler.Default
484+
let immediate = false
485+
//isNull SynchronizationContext.Current
486+
//&& TaskScheduler.Current = TaskScheduler.Default
487487

488488
if immediate then
489489
let oldCt = CheckAndThrowToken.Value
@@ -551,7 +551,8 @@ type Async2 =
551551
async2 {
552552
let! ct = Async2.CancellationToken
553553
use lcts = CancellationTokenSource.CreateLinkedTokenSource ct
554-
try
554+
555+
try
555556
let tasks = computations |> Seq.map (Async2.startInThreadPool lcts.Token)
556557
return! Task.WhenAll tasks
557558
with exn ->

tests/FSharp.Compiler.Service.Tests/FSharp.Compiler.Service.SurfaceArea.netstandard20.bsl

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12448,10 +12448,9 @@ Internal.Utilities.Library.Async2Implementation+Async2Data`1[t]: Boolean Equals(
1244812448
Internal.Utilities.Library.Async2Implementation+Async2Data`1[t]: Boolean Equals(Async2Data`1, System.Collections.IEqualityComparer)
1244912449
Internal.Utilities.Library.Async2Implementation+Async2Data`1[t]: Boolean Equals(System.Object)
1245012450
Internal.Utilities.Library.Async2Implementation+Async2Data`1[t]: Boolean Equals(System.Object, System.Collections.IEqualityComparer)
12451-
Internal.Utilities.Library.Async2Implementation+Async2Data`1[t]: Boolean IsBound
1245212451
Internal.Utilities.Library.Async2Implementation+Async2Data`1[t]: Int32 GetHashCode()
1245312452
Internal.Utilities.Library.Async2Implementation+Async2Data`1[t]: Int32 GetHashCode(System.Collections.IEqualityComparer)
12454-
Internal.Utilities.Library.Async2Implementation+Async2Data`1[t]: Microsoft.FSharp.Core.FSharpValueOption`1[System.Threading.Tasks.TaskCompletionSource`1[t]] TailCallSource
12453+
Internal.Utilities.Library.Async2Implementation+Async2Data`1[t]: Microsoft.FSharp.Core.FSharpOption`1[System.Threading.Tasks.TaskCompletionSource`1[t]] TailCallSource
1245512454
Internal.Utilities.Library.Async2Implementation+Async2Data`1[t]: System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1[t] MethodBuilder
1245612455
Internal.Utilities.Library.Async2Implementation+Async2Data`1[t]: System.Threading.CancellationToken CancellationToken
1245712456
Internal.Utilities.Library.Async2Implementation+Async2Data`1[t]: t Result
@@ -12463,7 +12462,7 @@ Internal.Utilities.Library.Async2Implementation+Async2`2[t,m]: Boolean Equals(Sy
1246312462
Internal.Utilities.Library.Async2Implementation+Async2`2[t,m]: Boolean Equals(System.Object, System.Collections.IEqualityComparer)
1246412463
Internal.Utilities.Library.Async2Implementation+Async2`2[t,m]: Int32 GetHashCode()
1246512464
Internal.Utilities.Library.Async2Implementation+Async2`2[t,m]: Int32 GetHashCode(System.Collections.IEqualityComparer)
12466-
Internal.Utilities.Library.Async2Implementation+Async2`2[t,m]: Internal.Utilities.Library.IAsync2Invocation`1[t] Start(System.Threading.CancellationToken, Microsoft.FSharp.Core.FSharpValueOption`1[System.Threading.Tasks.TaskCompletionSource`1[t]], Boolean)
12465+
Internal.Utilities.Library.Async2Implementation+Async2`2[t,m]: Internal.Utilities.Library.IAsync2Invocation`1[t] Start(System.Threading.CancellationToken, Microsoft.FSharp.Core.FSharpOption`1[System.Threading.Tasks.TaskCompletionSource`1[t]])
1246712466
Internal.Utilities.Library.Async2Implementation+Async2`2[t,m]: m StateMachine
1246812467
Internal.Utilities.Library.Async2Implementation+Awaitable: b getAwaiter$W[a,b,c](Microsoft.FSharp.Core.FSharpFunc`2[a,b], Microsoft.FSharp.Core.FSharpFunc`2[b,c], Microsoft.FSharp.Core.FSharpFunc`2[b,System.Boolean], a)
1246912468
Internal.Utilities.Library.Async2Implementation+Awaitable: b getAwaiter[a,b,c](a)
@@ -12475,11 +12474,6 @@ Internal.Utilities.Library.Async2Implementation+Awaiter: Void unsafeOnCompleted$
1247512474
Internal.Utilities.Library.Async2Implementation+Awaiter: Void unsafeOnCompleted[a,b](a, System.Action)
1247612475
Internal.Utilities.Library.Async2Implementation+Awaiter: b getResult$W[a,b](Microsoft.FSharp.Core.FSharpFunc`2[a,b], Microsoft.FSharp.Core.FSharpFunc`2[a,System.Boolean], a)
1247712476
Internal.Utilities.Library.Async2Implementation+Awaiter: b getResult[a,b](a)
12478-
Internal.Utilities.Library.Async2Implementation+BindContext: Boolean IncrementBindCount()
12479-
Internal.Utilities.Library.Async2Implementation+BindContext: Int32 bindLimit
12480-
Internal.Utilities.Library.Async2Implementation+BindContext: System.Threading.ThreadLocal`1[System.Int32] bindCount
12481-
Internal.Utilities.Library.Async2Implementation+BindContext: System.Threading.ThreadLocal`1[System.Int32] get_bindCount()
12482-
Internal.Utilities.Library.Async2Implementation+BindContext: Void Reset()
1248312477
Internal.Utilities.Library.Async2Implementation+DynamicState+Awaiting: System.Runtime.CompilerServices.ICriticalNotifyCompletion Item
1248412478
Internal.Utilities.Library.Async2Implementation+DynamicState+Awaiting: System.Runtime.CompilerServices.ICriticalNotifyCompletion get_Item()
1248512479
Internal.Utilities.Library.Async2Implementation+DynamicState+Bounce: DynamicState Item
@@ -12534,6 +12528,9 @@ Internal.Utilities.Library.Async2Implementation+ExceptionCache: System.Runtime.E
1253412528
Internal.Utilities.Library.Async2Implementation+ExceptionCache: a Throw[a](System.Exception)
1253512529
Internal.Utilities.Library.Async2Implementation+ExceptionCache: b GetResultOrThrow$W[a,b](Microsoft.FSharp.Core.FSharpFunc`2[a,b], Microsoft.FSharp.Core.FSharpFunc`2[a,System.Boolean], a)
1253612530
Internal.Utilities.Library.Async2Implementation+ExceptionCache: b GetResultOrThrow[a,b](a)
12531+
Internal.Utilities.Library.Async2Implementation+Trampoline: Boolean IsStackSufficient()
12532+
Internal.Utilities.Library.Async2Implementation+Trampoline: Boolean ShouldBounce
12533+
Internal.Utilities.Library.Async2Implementation+Trampoline: Boolean get_ShouldBounce()
1253712534
Internal.Utilities.Library.Async2Implementation+Trampoline: Microsoft.FSharp.Core.FSharpRef`1[System.Runtime.CompilerServices.ICriticalNotifyCompletion] Ref
1253812535
Internal.Utilities.Library.Async2Implementation+Trampoline: Microsoft.FSharp.Core.FSharpRef`1[System.Runtime.CompilerServices.ICriticalNotifyCompletion] get_Ref()
1253912536
Internal.Utilities.Library.Async2Implementation+Trampoline: Trampoline Current
@@ -12545,7 +12542,6 @@ Internal.Utilities.Library.Async2Implementation: Internal.Utilities.Library.Asyn
1254512542
Internal.Utilities.Library.Async2Implementation: Internal.Utilities.Library.Async2Implementation+Async2`2[t,m]
1254612543
Internal.Utilities.Library.Async2Implementation: Internal.Utilities.Library.Async2Implementation+Awaitable
1254712544
Internal.Utilities.Library.Async2Implementation: Internal.Utilities.Library.Async2Implementation+Awaiter
12548-
Internal.Utilities.Library.Async2Implementation: Internal.Utilities.Library.Async2Implementation+BindContext
1254912545
Internal.Utilities.Library.Async2Implementation: Internal.Utilities.Library.Async2Implementation+DynamicState
1255012546
Internal.Utilities.Library.Async2Implementation: Internal.Utilities.Library.Async2Implementation+ExceptionCache
1255112547
Internal.Utilities.Library.Async2Implementation: Internal.Utilities.Library.Async2Implementation+Trampoline
@@ -12563,7 +12559,7 @@ Internal.Utilities.Library.Async2Module: t run[t](System.Threading.CancellationT
1256312559
Internal.Utilities.Library.Async2`1[t]: Internal.Utilities.Library.IAsync2Invocation`1[t] StartImmediate(System.Threading.CancellationToken)
1256412560
Internal.Utilities.Library.Async2`1[t]: System.Runtime.CompilerServices.TaskAwaiter`1[t] GetAwaiter()
1256512561
Internal.Utilities.Library.Async2`1[t]: System.Runtime.CompilerServices.TaskAwaiter`1[t] StartBound(System.Threading.CancellationToken)
12566-
Internal.Utilities.Library.Async2`1[t]: Void TailCall(System.Threading.CancellationToken, Microsoft.FSharp.Core.FSharpValueOption`1[System.Threading.Tasks.TaskCompletionSource`1[t]])
12562+
Internal.Utilities.Library.Async2`1[t]: Void TailCall(System.Threading.CancellationToken, System.Threading.Tasks.TaskCompletionSource`1[t])
1256712563
Internal.Utilities.Library.DelayInitArrayMap`3[T,TDictKey,TDictValue]: System.Collections.Generic.IDictionary`2[TDictKey,TDictValue] CreateDictionary(T[])
1256812564
Internal.Utilities.Library.DelayInitArrayMap`3[T,TDictKey,TDictValue]: System.Collections.Generic.IDictionary`2[TDictKey,TDictValue] GetDictionary()
1256912565
Internal.Utilities.Library.DelayInitArrayMap`3[T,TDictKey,TDictValue]: T[] GetArray()

0 commit comments

Comments
 (0)