XFEExtension
【DLL】XFE各类拓展是一个C#的DLL库,旨在优化C#代码中常用语句的使用,并提供更简洁的访问方式,同时提供Xunit测试框架,快速搭建服务器/客户端,免费ChatGPTAPI接口,免费通讯服务器,XFE下载器,新增格式等
关注
0
Fork
0
Star
0
using System.Runtime.CompilerServices;
namespace XFEExtension.NetCore.TaskExtension;
/// <summary>
/// 任务同步器
/// </summary>
public class TaskSynchronizer
{
/// <summary>
/// 当前任务
/// </summary>
public Task? CurrentTask { get; set; }
/// <summary>
/// 返回当前任务的等待器
/// </summary>
/// <returns></returns>
public TaskAwaiter GetAwaiter()
{
if (CurrentTask is not null)
return CurrentTask.GetAwaiter();
return Task.CompletedTask.GetAwaiter();
}
/// <summary>
/// 添加任务
/// </summary>
/// <param name="task">待执行任务</param>
public void AddTask(Task task) => CurrentTask = task;
/// <summary>
/// 任务同步器
/// </summary>
public TaskSynchronizer() { }
/// <summary>
/// 任务同步器
/// </summary>
/// <param name="task">第一个待执行任务</param>
public TaskSynchronizer(Task task) => CurrentTask = task;
}
using System.Runtime.CompilerServices;
namespace XFEExtension.NetCore.TaskExtension;
/// <summary>
/// 任务同步器
/// </summary>
public class TaskSynchronizer
{
/// <summary>
/// 当前任务
/// </summary>
public Task? CurrentTask { get; set; }
/// <summary>
/// 返回当前任务的等待器
/// </summary>
/// <returns></returns>
public TaskAwaiter GetAwaiter()
{
if (CurrentTask is not null)
return CurrentTask.GetAwaiter();
return Task.CompletedTask.GetAwaiter();
}
/// <summary>
/// 添加任务
/// </summary>
/// <param name="task">待执行任务</param>
public void AddTask(Task task) => CurrentTask = task;
/// <summary>
/// 任务同步器
/// </summary>
public TaskSynchronizer() { }
/// <summary>
/// 任务同步器
/// </summary>
/// <param name="task">第一个待执行任务</param>
public TaskSynchronizer(Task task) => CurrentTask = task;
}