using System;
using System.Threading.Channels;
using System.Threading.Tasks;
namespace DMS.Infrastructure.Interfaces
{
///
/// 通道总线接口,用于在不同组件之间传递数据
///
public interface IChannelBus
{
///
/// 获取指定名称的通道写入器
///
/// 通道中传递的数据类型
/// 通道名称
/// 通道写入器
ChannelWriter GetWriter(string channelName);
///
/// 获取指定名称的通道读取器
///
/// 通道中传递的数据类型
/// 通道名称
/// 通道读取器
ChannelReader GetReader(string channelName);
///
/// 创建指定名称的通道
///
/// 通道中传递的数据类型
/// 通道名称
/// 通道容量
void CreateChannel(string channelName, int capacity = 100);
///
/// 关闭指定名称的通道
///
/// 通道中传递的数据类型
/// 通道名称
void CloseChannel(string channelName);
}
}