Можно ли использовать подсказку предсказания ветвления в C #?

Например, я знаю, что он определен для gcc и используется в ядре Linux как:

#define likely(x)       __builtin_expect((x),1)
#define unlikely(x)     __builtin_expect((x),0)

Если ничего подобного возможно в C #, это лучшая альтернатива переупорядочиванию операторов if вручную, поставив на первое место наиболее вероятный случай? Существуют ли какие-либо другие способы оптимизации на основе этого типа внешних знаний?

В связи с этим, CLR знает, как идентифицировать защитные предложения, и предполагает, что будет выбрана альтернативная ветвь, что делает эту оптимизацию неприемлемой для использования защитных предложений , правильно?

(Обратите внимание, что я понимаю, что это может быть микрооптимизация; меня интересуют только академические цели.)

18
задан ceyko 15 January 2012 в 22:33
поделиться