Điều gì sẽ xảy ra với các chức năng hoặc thủ tục nội tuyến trong Delphi (cụ thể là v2010 ở đây, nhưng tôi có cùng vấn đề với Turbo Delphi)?Delphi 2010 inlining vô ích?
Có một số sự không nhất quán trong trợ giúp về nó có thể không phải luôn luôn nội tuyến một chức năng vì "tiêu chí nhất định" bất cứ điều gì có nghĩa là.
Nhưng tôi thấy rằng các chức năng nội tuyến thường xuyên (ngay cả những hàm rất đơn giản có 3 hoặc 4 dòng mã) làm chậm mã hơn là tăng tốc.
Một ý tưởng tuyệt vời sẽ là tùy chọn trình biên dịch để "nội tuyến mọi thứ". Tôi không quan tâm nếu exe của tôi tăng 50% hoặc hơn để làm cho nó hoạt động nhanh hơn.
Có cách nào tôi có thể buộc Delphi thực sự mã nội tuyến ngay cả khi nó không được quyết định để được inlinded bởi trình biên dịch? Điều đó thực sự hữu ích. Nếu không, bạn cần thực hiện "thủ công nội tuyến" để sao chép mã thủ tục trên nhiều vùng mã của bạn với các nhận xét như "// nội tuyến thất bại ở đây, vì vậy nếu bạn thay đổi 5 dòng tiếp theo, hãy thay đổi chúng trong 8 điểm trùng lặp khác "
Mọi mẹo ở đây?
Mã điều khiển nội tuyến được đặt thành tự động không được trợ giúp. Lấy mẫu Profiler là rất tốt. Rất hữu ích trong việc hiển thị nơi mà các nút cổ chai là trong số liệu thống kê thực sự. Ngay cả khi nó thực sự cho tôi thấy những gì tôi đã mới. Nó sẽ có ích trong tương lai chắc chắn. Cảm ơn. – TallGuy