Có một tùy chọn trong C # để thực thi mã không được kiểm tra. Nói chung, không nên làm như vậy, vì mã được quản lý an toàn hơn nhiều và nó khắc phục được rất nhiều vấn đề.
Tuy nhiên tôi tự hỏi, nếu bạn chắc chắn rằng mã của bạn sẽ không gây ra lỗi và bạn biết cách xử lý bộ nhớ thì tại sao (nếu bạn thích mã nhanh) hãy làm theo lời khuyên chung?
Tôi tự hỏi điều này vì tôi đã viết một chương trình cho một máy quay video, đòi hỏi một số thao tác bitmap cực kỳ nhanh. Tôi đã tự mình thực hiện một số thuật toán đồ họa nhanh và chúng hoạt động tuyệt vời trên bitmap bằng cách sử dụng mã không được quản lý.
Bây giờ tôi tự hỏi nói chung, nếu bạn chắc chắn rằng bạn không bị rò rỉ bộ nhớ hoặc có nguy cơ gặp sự cố, tại sao không sử dụng mã không được quản lý thường xuyên hơn?
PS nền tảng của tôi: Tôi đã tham gia vào thế giới lập trình này và tôi làm việc một mình (tôi làm như vậy trong một vài năm) và vì vậy tôi hy vọng câu hỏi thiết kế phần mềm này không có gì lạ. Tôi thực sự không có người khác ở ngoài đó như một giáo viên để hỏi những điều như vậy.
unsafe
ví dụ về trường hợp sử dụng tốt : stackoverflow.com/q/11660127/102937
unsafe
có nghĩa là "biết những gì bạn đang làm và cân nhắc lợi ích chống lại rủi ro." Tôi đã sử dụngunsafe
một số lần và nó luôn dành cho một thứ gì đó rất cụ thể liên quan đến hiệu suất có thể được xử lý theo phương pháp riêng của nó. Tôi không sử dụng nó như một kỹ thuật lập trình chung, vì phần lớn thời gian lợi ích hiệu suất bổ sung không đáng để mất đi sự an toàn.