2013-09-05 2 views
1

어셈블리가 Csc.exe에 전달 된 /optimize- (끝의 대시/빼기 기호)으로 작성된 경우 최적화되었거나되지 않습니까? 다음과 같은 세 가지 옵션의 차이는 무엇C#/컴파일러 최적화 옵션 (VS2012)

:

/optimize 
/optimize+ 
/optimize- 

내가 너무 도움이 MSDN 문서를 찾을 수없는이 ... 명시 적으로의 방법에 쓰여있는 말은

http://msdn.microsoft.com/en-us/library/t0hfscdc

+0

인용구 : "/ optimize는 공용 언어 런타임에서 런타임에 코드를 최적화하도록 지시합니다." 정확히 무엇이 * 명확하지 않은가요? –

+1

@HansPassant 문서에는 절대로 +/- 플래그가 명시하는 내용이 명시되어 있지 않습니다. 아마도 최적화 - 일부 최적화는 수행하지만, "부분 최적화"는 수행하지 않을 것입니다. 그것은 합리적인 (그러나 잘못된) 추측입니다. – Servy

+0

@HansPassant :'/ optimize'에 대한 문서가 완전히 잘못된 것 같습니다. 사실 CLR이 아닌 코드를 최적화하기 위해 * 컴파일러에게 말하고 있습니다. 나는 또한'/ optimize'가'/ optimize +'와 같은지 명확하지 않다. –

답변

3

그 최적화는 꺼져 있습니다. 매개 변수를 완전히 생략하는 것과 같습니다. 이 옵션은 사용자가 단순히 매개 변수를 추가하는 것을 잊어 버렸다 고 생각하게하는 대신 독자가 의도적으로 최적화를 원하지 않는다는 것을 독자 (배치 스크립트)에게 분명히 알릴 수 있도록하기 위해 존재합니다.