项目开发中使用到了redis订阅功能,在订阅的代码执行成功后,发现本应继续执行的程序断不到点,
经过查看redis订阅的源码,发现订阅成功后,会一直循环执行一个监听频道推送消息的动作,导致后续代码无法执行,
在C#中另起一个线程,将订阅功能的代码放入新线程中执行,使主程序不被阻塞。
Thread t = new Thread(new ThreadStart(() =>
{
Subscribe(m_gameId);
}));
t.Start();
2023-07-29 19:45:46
项目开发中使用到了redis订阅功能,在订阅的代码执行成功后,发现本应继续执行的程序断不到点,
经过查看redis订阅的源码,发现订阅成功后,会一直循环执行一个监听频道推送消息的动作,导致后续代码无法执行,
在C#中另起一个线程,将订阅功能的代码放入新线程中执行,使主程序不被阻塞。
Thread t = new Thread(new ThreadStart(() =>
{
Subscribe(m_gameId);
}));
t.Start();
下一篇:Codevs 3728 联合权值