Forum: Ders Arası RSS
Yeni Konu Örnekleri
Zamanla güncellenebilir...
Avatar
Salih Dinçer #1
Üye Ock 2012 tarihinden beri · 1912 mesaj · Konum: İstanbul
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Konu adı: Yeni Konu Örnekleri
Merhaba,

Çok sık örnek türetmeye başladım, belki D kitabına eklenebilir diye; bunları zamanla paylaşacağım. Konun örnekleri yeterli olsa bile buradan ilgilendiğiniz konuyu takip edebilirsiniz...

KOŞUT İŞLEMLER (spawn, send, shared...)
    • Çıktısı:[salih@telyeweb ders]$ ./spawnTest2
                           54 ms.
           firstFunc() entered x 1 times...
                           554 ms.
           secondFunc() entered  x 1 times...
                           157 ms.
           firstFunc() entered x 2 times...
                           644 ms.
           secondFunc() entered  x 2 times...
                           296 ms.
           firstFunc() entered x 3 times...

    • Çıktısı:[salih@telyeweb ders]$ ./pizzaYap
           Un 97, Su 98, Yağ 99, Gaz 992, Fırın 47 °C
           Un 94, Su 96, Yağ 98, Gaz 990, Fırın 49 °C
           Un 91, Su 94, Yağ 97, Gaz 989, Fırın 50 °C


YAPILAR (struct, this, static...)
    • Çıktısı:[salih@telyeweb ders]$ ./staticStruct
          - Kurulurken sayı.n'nin değeri = 3 <-n²+1
          - Karesi alınıp +1 ekli değeri = 10 <-n²
          - Tekrar karesi hesaplatılırsa = 100 n->

          Acaba aynı mı; yoksa değeri = 10


ZAMANLAR (clock, currTime, Tick...)
    • Çıktısı:[salih@telyeweb ders]$ ./timeTick
          Geri sayım başladı... TickDuration(20496)
          - 10 TickDuration(98091)
          ...
          - 3 TickDuration(7000436360)
          - 2 TickDuration(8000460917)
          - 1 TickDuration(9000484748)
          Mekik fırlatıldı !!! TickDuration(10000510014)
Bilgi paylaştıkça bir bakmışız; kar topu olmuş ve çığ gibi üzerimize geliyor...:)
Bu mesaj 3 defa değişti; son değiştiren: Salih Dinçer; zaman: 2012-04-11, 01:52.
acehreli (Moderatör) #2
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Orada şu satır dikkatimi çekti:

    do {} while (Clock.currTime < sonrakiZaman);

O döngü çekirdeklerden birisini %100 meşgul eder. En iyisi döngü içine iş parçacığını küçük bir süre duraksatan bir komut yazmaktır:

import core.thread;
// ...
    do {
        Thread.sleep(dur!("msecs")(1));
    } while (Clock.currTime < sonrakiZaman);

Ama sen bir anlamda zaten sleep'in kendisini gerçekleştirdiğin için benim söylediğimin bir anlamı yok. :)

Ali
zafer #3
Üye Tem 2009 tarihinden beri · 700 mesaj · Konum: Ankara
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
acehreli:
O döngü çekirdeklerden birisini %100 meşgul eder. En iyisi döngü içine iş parçacığını küçük bir süre duraksatan bir komut yazmaktır:

Gerçekten gözle görülür bir fark var. Ali'nin kodunu denemek için şöyle bir metot yazdım,

void SaniyeKadarBekle(int saniye)
{
    Thread.sleep(dur!("seconds")(saniye));
}

Önceki bekleme kodu gibi işlemciye yüklenmiyor. Bu tür küçük ama etkili bilgiler gerçekten çok değerli. Diğer taraftan bende bir bekleme kodu yazsaydım Salih gibi yazardım.

Bu arada Salih, bu kodları dışarıda bir yere değilde site içinde bir yerlerde saklasak daha iyi olmaz mı?
https://github.com/zafer06 - depo
Avatar
Salih Dinçer #4
Üye Ock 2012 tarihinden beri · 1912 mesaj · Konum: İstanbul
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Olur tabi arkadaşlar, her türlü nasıl uygunsa o şekilde yapabiliriz...

Benim yukarıdaki amacım çok göz doldurmadan bağlantı vermekte. CodePad'i, D kodlarını (sürüm D1.x de olsa) çalıştırdığı için tercih etmiştim. Bir de üzerinde çalıştığım son örnek olan koşut işlemler ile ilgili  pizzaDlang'ı forumdan nakledip tartışalım inşaallah. Ne dersiniz?
Bilgi paylaştıkça bir bakmışız; kar topu olmuş ve çığ gibi üzerimize geliyor...:)
Doğrulama Kodu: VeriCode Lütfen resimde gördüğünüz doğrulama kodunu girin:
İfadeler: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Özel Karakterler:
Forum: Ders Arası RSS
Bağlı değilsiniz. · Şifremi unuttum · ÜYELİK
This board is powered by the Unclassified NewsBoard software, 20100516-dev, © 2003-10 by Yves Goergen
Şu an: 2017-11-22, 05:08:00 (UTC -08:00)