-
Ü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
-
Ü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 ;)
1 kişi bu mesajı beğendi.
https://www.linkedin.com/in/turgaycan/
Kaliteli kod yazılır.. (Günlük/Saatlik ücreti ile)