lostyazilim
tr.link

C'de Sleep() Her Sistem İçin Stabil Değil Mi?

2 Mesajlar 835 Okunma
acebozum
tr.link

bjlkl bjlkl WM Aracı Kullanıcı
  • Üyelik 22.01.2014
  • Yaş/Cinsiyet 29 / E
  • Meslek Bilgisayar Mühendisi
  • Konum İstanbul Avrupa
  • Ad Soyad B** C**
  • Mesajlar 1843
  • Beğeniler 269 / 263
  • Ticaret 1, (%100)
merhaba arkadaşlar, çeşitli şeyler deniyordum ve bir trafik ışığı programı yaptım. fakat bir sorun var.
şimdi her yerde sleep() fonksiyonu içerisine girilen değer milisaniye olarak geçiyor. ve ben bir windows7 yüklü bilgisayarda sleep(1000) dediğimde 1 saniyelik bir timer oluşturmuş gibi oluyorum. bunu 2-3 pc de denedim normal sonuç verdi. fakat evimde win8 yüklü olan 64bit bilgisayarımda sleep(1) yazınca bir saniye bekletmeyi yapıyor. yani yazdığım program her sistem için stabil olmadı gibime geldi. bu konuda ne düşünüyorsunuz.

ve burda şöyle bir sorun oluyor slepp içerisine integer değer girilebiliyor sleep(1) 1 saniye bekletiyorsa yarım saat bekletmek için bir kod maalesef bulunmuyor oluyor. bazı pclerde 1000, bazılarında 1 değerine göre hareket etmesi sorun
 

 

wmaraci
reklam

YazilimMimari YazilimMimari Eski adi: Turgay Can Kullanıcı
  • Üyelik 25.06.2012
  • Yaş/Cinsiyet 38 / E
  • Meslek Engineering Director
  • Konum İstanbul Avrupa
  • Ad Soyad T** C**
  • Mesajlar 771
  • Beğeniler 2 / 260
  • Ticaret 0, (%0)
Unix tabanlı işletim sistemlerinde Timer thread'inin aldığı parametre direkt saniye cinsinde fakat windows tabanlı işletim sistemlerinde milisaniye cinsindendir.


Bunu aşmak için programda basit bir yöntem izleyiniz.

Kod java kodudur.

Süre için bir metod yazalım;

public int buildThreadTime(int threadTime){

String operatingSystem = System.getProperty("os.name");
if(operatingSystem.startsWith("Windows")){
return threadTime * 1000;
}

return threadTime;
}



Programınızdaki kod işletim sistemlerine göre rahatca çalışacaktır ;)
3han

kişi bu mesajı beğendi.

https://www.linkedin.com/in/turgaycan/
Kaliteli kod yazılır.. (Günlük/Saatlik ücreti ile)
wmaraci
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al