据我所知,在Python和Django中,信号只是简单的委托事件。它们在功能上与C#、Java、ActionScript等中典型的事件概念有什么区别吗?
发布于 2009-03-09 02:52:18
实际上,“信号”比事件存在的时间更长。在最早的用法中,信号是进程获得事件发生通知的异步方式。由于Unix比Django古老得多(而且Django的许多工作都来自pydispatcher,最初的东西就是在pydispatcher完成的),所以这个名字就流传了下来。
你可能会说,事件是真正的信号!
发布于 2009-03-09 02:47:44
信号通常与操作系统工具相关联,而事件通常是应用程序定义的。在一些技术堆栈中,操作系统级别的东西可能隐藏得足够好,以至于API中没有区别,但在其他技术堆栈中可能没有区别。
发布于 2009-03-09 02:51:11
Afaik Qt实现了第一个信号/槽。Qt's docs解释了这个比喻:“当特定事件发生时,就会发出信号”。这种区别是如此微妙,以至于命名法变得模糊。
https://stackoverflow.com/questions/624844
复制相似问题