Trong C#, sẽ có bất kỳ sự khác biệt nào về hiệu suất khi so sánh BA lựa chọn thay thế sau đây không?sẽ khai báo các biến bên trong các khối con cải thiện hiệu suất?
ONE
void ONE(int x) {
if (x == 10)
{
int y = 20;
int z = 30;
// do other stuff
} else {
// do other stuff
}
}
HAI
void TWO(int x) {
int y;
int z;
if (x == 10)
{
y = 20;
z = 30;
// do other stuff
} else {
// do other stuff
}
}
BA
void THREE(int x) {
int y = 20;
int z = 30;
if (x == 10)
{
// do other stuff
} else {
// do other stuff
}
}
No.bạn đang lo lắng về những gì được gọi là 'tối ưu hóa vi mô': bạn có đo điểm chuẩn để xác định rằng bạn thực sự có vấn đề về hiệu suất không? –
@Mitch: Tôi thấy không có nơi nào trong bài đăng của Craig phàn nàn về việc có hiệu suất chậm trong mã của anh ấy. Anh ta có một câu hỏi hoàn toàn hợp lệ và thông minh để hỏi, và thế là anh ta đã làm được. Nó giống như chúng tôi không thể đăng bất cứ điều gì @SO liên quan đến hiệu suất. –
Tôi thậm chí sẽ không gọi đây là tối ưu hóa vi mô, mà là tối ưu hóa nano. Bất cứ ai nhìn thấy đầu ra của một profiler biết rằng lo lắng về thời gian thực hiện để lưu trữ một biến hoặc gọi một hàm là ludicrously không đáng kể. –