2023-06-05 19:57:17 +08:00
|
|
|
|
using System;
|
|
|
|
|
|
|
|
|
|
namespace BITKit
|
|
|
|
|
{
|
2024-06-08 10:07:40 +08:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// 循环
|
|
|
|
|
/// </summary>
|
2023-06-05 19:57:17 +08:00
|
|
|
|
public interface ITicker
|
|
|
|
|
{
|
2024-06-08 10:07:40 +08:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// 总帧数
|
|
|
|
|
/// </summary>
|
2024-03-31 23:31:00 +08:00
|
|
|
|
ulong TickCount { get; }
|
2024-06-08 10:07:40 +08:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// 在下一次循环时执行,仅执行一次
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="action"></param>
|
2023-06-05 19:57:17 +08:00
|
|
|
|
void Add(Action action);
|
2024-06-08 10:07:40 +08:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// 注册在下一次循环时执行,每次循环都会执行
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="action"></param>
|
2024-03-31 23:31:00 +08:00
|
|
|
|
void Add(Action<float> action);
|
2024-06-08 10:07:40 +08:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// 移除循环
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="action"></param>
|
2024-03-31 23:31:00 +08:00
|
|
|
|
void Remove(Action<float> action);
|
2023-06-05 19:57:17 +08:00
|
|
|
|
}
|
2024-06-08 10:07:40 +08:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// 主线程循环
|
|
|
|
|
/// </summary>
|
2023-06-05 19:57:17 +08:00
|
|
|
|
public interface IMainTicker : ITicker { }
|
2024-06-08 10:07:40 +08:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// 线程池循环
|
|
|
|
|
/// </summary>
|
2023-06-05 19:57:17 +08:00
|
|
|
|
public interface IThreadTicker : ITicker { }
|
|
|
|
|
}
|