在ReactiveExtensions源代码有代码不同的实施方式之间的切换的巨大大片如什么是在反应性扩展源代码NO_PERF标志做
和片段
#if !NO_PERF
return new Distinct<TSource, TSource>(source, x => x, EqualityComparer<TSource>.Default);
#else
return Distinct_(source, x => x, EqualityComparer<TSource>.Default);
#endif
这个标志NO_PERF
的意图是什么以及在使用它编译的库和没有它的库之间的行为有什么不同。
它在这里定义,但我不知道它的目的:https://github.com/Reactive-Extensions/Rx.NET/blob/master/Rx.NET/Source/Common.targets#L311 – Zache