C #에는 검사되지 않은 코드를 실행하는 옵션이 있습니다. 관리되는 코드가 훨씬 안전하고 많은 문제를 극복하므로 일반적으로 권장하지 않습니다.
그러나 코드에서 오류가 발생하지 않는다고 확신하고 메모리를 처리하는 방법을 알고 있다면 왜 (빠른 코드를 좋아한다면) 일반적인 조언을 따르는 지 궁금합니다.
비디오 카메라 용 프로그램을 작성했기 때문에 이것이 매우 궁금합니다. 비트 맵 조작이 매우 빠릅니다. 빠른 그래픽 알고리즘을 직접 만들었으며 관리되지 않는 코드를 사용하여 비트 맵에서 훌륭하게 작동합니다.
이제 일반적으로 메모리 누수 또는 충돌 위험이 없다고 확신한다면 관리되지 않는 코드를 더 자주 사용하지 않는 이유는 무엇입니까?
추신 : 내 프로그래밍 배경 : 나는이 프로그래밍 세계에 뛰어 들었고 나는 혼자 일한다 (몇 년 동안 그렇게한다). 그리고 나는이 소프트웨어 디자인 질문이 그렇게 이상하지 않기를 바란다. 나는 그런 것들을 요구하는 선생님과 같은 다른 사람들이 실제로 없습니다.
unsafe
사용 사례 는 다음과 같습니다 . stackoverflow.com/q/11660127/102937
unsafe
수단 "당신이 무슨 일을하는지 알고 있고, 위험에 대한 혜택을 단다." 필자는unsafe
몇 번이나 사용해 왔으며 , 항상 고유 한 방식으로 성능을 떨어 뜨릴 수있는 성능과 관련이있는 특정 목적을위한 것이 었습니다. 대부분의 경우 추가 성능 이점이 안전 손실의 가치가 없기 때문에 일반적인 프로그래밍 기술로 사용하지 않습니다.