问题描述
问题描述:咨询一个技术问题 redis处理 请求时候 业务处理 是利用回调函数 typedef void aeFileProc(struct aeEventLoop eventLoop, int fd, void clientData, int mask);
问题1 这个回调执行是在是重新开辟一个线程吗?这个跟liunx 信号有点类型 我一直想不明白
假如回到执行a函数 a函数是在哪里执行的呀
问题2 liunx 太神奇了 定义一个typedef void aeFileProc变成回到了 这个不懂 有限解决问题1
多谢
问题解答
回答1:读完之后,感觉自己大舌头了。。。不懂
回答2:回调函数不一定是在另外的一个线程进行执行,有可能就在当前线程,这个还是和具体实现相关。想知道答案就去看这个方法的实现
回答3:我主要问题是 reids是单进程单线程方式处理请求,如果一个请求处理时间占用过长不影响其他的业务吗?带着这个问题我看代码他们用到了回调函数处理请求1 我写了dmeo 时候当前进程处理的我想到liunx 信号处理 不知道是在哪里执行的?