我正在开发一个具有大量性能关键代码的应用程序。在查看我的代码时,我注意到在有很多调用的事件上我也有很多+=
和-=
,所以我问自己(现在你)+=
和{{1实现了很多调用时的速度。
答案 0 :(得分:2)
根据事件,事件是事件代表的列表。添加新事件的性能与调用List<T>.Add()
(通常为O(1))相似,而删除委托则相当于List<T>.Remove()
,即O(n)其中 n < / em>是列表中的代表数。
(这并不一定意味着代表实际上已经实施并且List<T>
已经涵盖,但性能特征是相同的。)