SORU
28 Kasım 2009, CUMARTESİ


Java #ifdef #ifndef

Eğer derleme zamanı #ifdef C #ifndef gibi Java koşulları yapmak için bir yol varsa orada şüpheliyim .

Benim sorunum bir algoritma Java ile yazılmış ve bir süre bu algoritma geliştirir farklı. Her ne kadar kullanılır hale biriktiriyorum ölçmek istiyorum.

Şu anda geliştirmek için kullanılacak ve hangi süre boyunca karar vermek için kullanılan boolean değişken bir dizi var. Ama bile bu değişkenleri test toplam çalışma süresini etkiler.

Derlenmiş ve kullanılması gereken derleme zamanı sırasında karar vermek için bir yol bulmak istiyorum.

Birileri bir şekilde Java bunu biliyor mu. Ya da belki birileri böyle bir yol yok o bilir (o da faydalı olur).

CEVAP
28 Kasım 2009, CUMARTESİ


private static final boolean enableFast = false;

// ...
if (enableFast) {
  // This is removed at compile time
}

Yukarıda gösterildiği gibi ifade derleme zamanında değerlendirilir. Bu kullanın

private static final boolean enableFast = "true".equals(System.getProperty("fast"));

O zaman herhangi bir koşul enableFast bağımlı JİT derleyici tarafından değerlendirilecek. Bu yükü ihmal edilebilir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • NPR

    NPR

    22 NİSAN 2006
  • Orson Wang

    Orson Wang

    28 EKİM 2006
  • Pepsi

    Pepsi

    1 Kasım 2005