【mirai.NET】加了一个while(true)造成的血案
今天,我看见了chatGPT,内心躁动了起来:要是我也可以写一个这么牛的聊天ai,那多好啊。说干就干,我找到了一个QQ机器人框架——mirai
经过一阵倒腾,终于mirai跑起来了,接下来我打算用c#开发,于是用vs丢丢装了mirai.net
该说不说,这个框架确实好用,我试了一些简单的功能,信心大增,就想写一个群里有人发消息那就发送“HelloWorld!”
说干就干,我写下了这段代码`
while (true)
{
bot.EventReceived
.OfType()
.Where(receiver => receiver.Group.Id == “xxx”)
.Subscribe(async receiver =>
{
await MessageManager.SendGroupMessageAsync(“xxx”, “hi”);
});
bot.MessageReceived
.OfType()
.Where(receiver => receiver.GroupId == “xxx”)
.Subscribe(async receiver =>
{
await receiver.SendMessageAsync(“HelloWorld!”);
});
}
就这么几行代码,却导致了严重的后果
我把程序跑起来并在群里进行测试,我发了一个“a”,突然机器人发送了一大串“HelloWorld!”
随后,机器人就强制下线了,用电脑登录,就这样我的qq被冻结了
我的机器人登录的是大号,在群里发消息的是小号,这导致我的大号直接冻结,我在那一刻也冻结了
在这里我要提醒大家:
while不要乱用!
while不要乱用!
while不要乱用!