You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
58 lines
1.4 KiB
C#
58 lines
1.4 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Diagnostics;
|
|
using System.Linq;
|
|
using System.Net.Sockets;
|
|
using System.Text;
|
|
using System.Threading;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace Paho.MqttDotnet
|
|
{
|
|
/// <summary>
|
|
/// 定义任务行为接口
|
|
/// </summary>
|
|
interface ITaskSetter
|
|
{
|
|
/// <summary>
|
|
/// 设置任务的行为结果
|
|
/// </summary>
|
|
/// <param name="value">数据值</param>
|
|
/// <returns></returns>
|
|
bool SetResult(object value);
|
|
|
|
/// <summary>
|
|
/// 设置设置为异常
|
|
/// </summary>
|
|
/// <param name="ex">异常</param>
|
|
/// <returns></returns>
|
|
bool SetException(Exception ex);
|
|
}
|
|
|
|
/// <summary>
|
|
/// 定义任务行为接口
|
|
/// </summary>
|
|
/// <typeparam name="TResult">结果类型</typeparam>
|
|
interface ITaskSetter<TResult> : ITaskSetter
|
|
{
|
|
/// <summary>
|
|
/// 设置任务的行为结果
|
|
/// </summary>
|
|
/// <param name="value">数据值</param>
|
|
/// <returns></returns>
|
|
bool SetResult(TResult value);
|
|
|
|
/// <summary>
|
|
/// 同步获取任务结果
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
TResult GetResult();
|
|
|
|
/// <summary>
|
|
/// 获取任务
|
|
/// </summary>
|
|
/// <returns></returns>
|
|
Task<TResult> GetTask();
|
|
}
|
|
}
|