UniTaskVoid can not await.

master
neuecc 2020-05-25 19:33:11 +09:00
parent 8b7f832c0f
commit b8c109848e
2 changed files with 27 additions and 27 deletions

View File

@ -4,7 +4,7 @@ using System;
namespace Cysharp.Threading.Tasks
{
public struct AsyncUnit : IEquatable<AsyncUnit>
public readonly struct AsyncUnit : IEquatable<AsyncUnit>
{
public static readonly AsyncUnit Default = new AsyncUnit();

View File

@ -9,41 +9,41 @@ using Cysharp.Threading.Tasks.CompilerServices;
namespace Cysharp.Threading.Tasks
{
[AsyncMethodBuilder(typeof(AsyncUniTaskVoidMethodBuilder))]
public struct UniTaskVoid
public readonly struct UniTaskVoid
{
public void Forget()
{
}
[DebuggerHidden]
public Awaiter GetAwaiter()
{
return new Awaiter();
}
// [DebuggerHidden]
// public Awaiter GetAwaiter()
// {
// return new Awaiter();
// }
public struct Awaiter : ICriticalNotifyCompletion
{
[DebuggerHidden]
public bool IsCompleted => true;
// public struct Awaiter : ICriticalNotifyCompletion
// {
// [DebuggerHidden]
// public bool IsCompleted => true;
[DebuggerHidden]
public void GetResult()
{
#if UNITY_2018_3_OR_NEWER
UnityEngine.Debug.LogWarning("UniTaskVoid can't await, always fire-and-forget. use Forget instead of await.");
#endif
}
// [DebuggerHidden]
// public void GetResult()
// {
//#if UNITY_2018_3_OR_NEWER
// UnityEngine.Debug.LogWarning("UniTaskVoid can't await, always fire-and-forget. use Forget instead of await.");
//#endif
// }
[DebuggerHidden]
public void OnCompleted(Action continuation)
{
}
// [DebuggerHidden]
// public void OnCompleted(Action continuation)
// {
// }
[DebuggerHidden]
public void UnsafeOnCompleted(Action continuation)
{
}
}
// [DebuggerHidden]
// public void UnsafeOnCompleted(Action continuation)
// {
// }
// }
}
}