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

  • Klemens Torggler

    Klemens Torg

    11 Mart 2008
  • knopik96

    knopik96

    7 Mayıs 2011
  • Within Temptation

    Within Tempt

    18 EYLÜL 2006