SORU
29 Ocak 2013, Salı


Neden “while(true)” “Parçacığı.olmadan mı uyku” neden 100% ama Windows değil Linux CPU kullanımı?

Java'da basit bir program oluşturduk:

public static void main(String[] args) throws InterruptedException {
    while (true) 
        ;
}

Ben bir Linux makinede bu çalışma, 0 CPU kullanımı gösterir, ama yavaş görünmesini OS neden olmaz. Eğer Windows üzerinde aynı kodu çalıştırmak ancak, bunun sadece CPU kullanımı hakkında gösterir.

Linux üzerinde Windows ve OpenJDK 6 Oracle TOTEM kullanıyorum.

Windows' kararı parçacıkları rastgele zamanlayıcı ve Linux değil mi? merak ediyorum

CEVAP
29 Ocak 2013, Salı


Windows Görev Yöneticisi yok iken sözde modu IRİX, top Linux varsayılan olarak çalışır. Hadi 4 çekirdek var ki:

  • 1 IRİX modu ile tam olarak kullanılan çekirdek 0'dür ve 4 çekirdekli 400%.

  • , 1 kapalı IRİX modu ile tam olarak kullanılan çekirdek % oranında ve 4 çekirdek 100%.

Bu, top Linux varsayılan olarak ~100% olarak sonsuz bir döngü gösterir ve Windows ~25%, ve tam olarak aynı anlama geliyor gibi gösterilir.

top ile çalışırken, IRİX moduna geçiş yapabilirsinizShiftben. Bu numaraları maç yapacak.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Official Android Tips

    Official And

    23 EYLÜL 2009
  • B4ROK

    B4ROK

    1 EKİM 2008
  • PremiumBeat.com - Royalty Free Music

    PremiumBeat.

    16 Kasım 2008