C# 状态机 Stateless 3.0

Stateless 简介

Stateless 是基于 C# 实现状态机的库。详见 Github - Stateless

Stateless 简单用法

1 - 定义状态(State)以及不同状态间转换的触发器(Trigger)。
简例中用枚举类型定义 State 及 Trigger:

enum State
{
	state1,
	state2,
	state3
}

enum Trigger
{
	trigger1,
	trigger2
}

2 - 定义状态机对象:

StateMachine<State, Trigger> _machine = new StateMachine<State, Trigger>(State.state1);

某一时刻,状态机 _machine 处于某一状态,比如 state1,此时通过不同的 Trigger 可以触发该状态机转变到不同的状态。至于,状态机处于各个状态时,不同的 Trigger 会触发其转换到何种状态,需要对状态机进行配置。

3 - 配置状态机对象:

_machine.Config(State.state1)
	.Permit(Trigger.trigger1, State.state2)
	.
  • 1
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值