folder Tahribat.com Forumları
linefolder Visual Basic - Basic - PicBasic ve Türevleri
linefolder VB6 Da Aynı Anda 2 İşlem Nasıl Yaptırabiliriz



VB6 Da Aynı Anda 2 İşlem Nasıl Yaptırabiliriz

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    DE5TROY3R
    DE5TROY3R's avatar
    Kayıt Tarihi: 04/Nisan/2007
    Erkek

    SpermMan bunu yazdı:
    -----------------------------

    DOEVENTS
    BİR DÖNGÜDE V.B., SIRADAKİ OLAYLARIN YAPILMASINA İMKAN VERİR.
    PROGRAMDA ÇALIŞMASI ÇOK UZUN SÜREN KOD BLOKLARI VARSA KOD BLOĞUNUN ÇALIŞMASI BİTENE KADAR BAŞKA BİR İŞLEMM YAPAMAZSINIZ.
    BU TİP İŞLEMLERDE, DOEVENTS KOMUTU, KONTROLÜ WINDOWS'A VEREREK DİĞER BEKLEYEN İŞLEMLERİN YAPILMASINI SAĞLAR.
    ÖRNEK
    Dim i
    for i=1 to 20000
    list1.additem i
    doevents
    next

    aradığımı buldum gibi ama tam olarak anlayamadım doevents diye bi dalgametre varmış nasıl kullanıldığına tam bi örnek verebilecek birisi var mı :S bazı sitelerde doevents kullanmak için apilere ihtiyaç var falan diyor şu an pc de vb yüklü değil şirketin makineden bağlanıyorum


    -----------------------------

    Senin aradığın bunun tersi

    Bu a yı yazmadan b ye geçme demek

    flash ile mediaplayerin videoyu açma süreleri nesnelerden kaynaklanan bişeydir

    hangisi önce açılıyosa onun önüne aradaki fark kadar sleep koymayı dene

  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    SpermMan
    SpermMan's avatar
    Kayıt Tarihi: 12/Haziran/2007
    Erkek

    DE5TROY3R bunu yazdı:
    -----------------------------

    SpermMan bunu yazdı:
    -----------------------------

    DOEVENTS
    BİR DÖNGÜDE V.B., SIRADAKİ OLAYLARIN YAPILMASINA İMKAN VERİR.
    PROGRAMDA ÇALIŞMASI ÇOK UZUN SÜREN KOD BLOKLARI VARSA KOD BLOĞUNUN ÇALIŞMASI BİTENE KADAR BAŞKA BİR İŞLEMM YAPAMAZSINIZ.
    BU TİP İŞLEMLERDE, DOEVENTS KOMUTU, KONTROLÜ WINDOWS'A VEREREK DİĞER BEKLEYEN İŞLEMLERİN YAPILMASINI SAĞLAR.
    ÖRNEK
    Dim i
    for i=1 to 20000
    list1.additem i
    doevents
    next

    aradığımı buldum gibi ama tam olarak anlayamadım doevents diye bi dalgametre varmış nasıl kullanıldığına tam bi örnek verebilecek birisi var mı :S bazı sitelerde doevents kullanmak için apilere ihtiyaç var falan diyor şu an pc de vb yüklü değil şirketin makineden bağlanıyorum


    -----------------------------

    Senin aradığın bunun tersi

    Bu a yı yazmadan b ye geçme demek

    flash ile mediaplayerin videoyu açma süreleri nesnelerden kaynaklanan bişeydir

    hangisi önce açılıyosa onun önüne aradaki fark kadar sleep koymayı dene


    -----------------------------

    PROGRAMDA ÇALIŞMASI ÇOK UZUN SÜREN KOD BLOKLARI VARSA KOD BLOĞUNUN ÇALIŞMASI BİTENE KADAR BAŞKA BİR İŞLEMM YAPAMAZSINIZ.
    BU TİP İŞLEMLERDE, DOEVENTS KOMUTU, KONTROLÜ WINDOWS'A VEREREK DİĞER BEKLEYEN İŞLEMLERİN YAPILMASINI SAĞLAR.

    alakası yok iyi okusana şunu


    -
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    DE5TROY3R
    DE5TROY3R's avatar
    Kayıt Tarihi: 04/Nisan/2007
    Erkek

    DoEvents nedir?

    Kullanım yeri uzun döngülerdir. Kullanım amacı işlem sırası geçirmektir.
    Bir işlemci çekirdeği birim zamanda sadece tek bir iş yapabilir. Bu yüzden windows işletim sisteminde her işlem parçacığı belirli bir önem seviyesinde sıra ile çalışırlar. Bu da sanki aynı anda bir çok program çalışıyormuş izlenimi verir. Şayet bir işlem parçası uzun süre sistemi meşgul ederse sıradaki diğer parçalar beklemek zorunda kalırlar. Uygulama penceresi hatta bazen windows bile kilitlenme durumuna gelir. Tabi windows bu kadar uzun süre kendisine yanıt vermeden çalışan bir program olduğunda uygulamaya "yeter artık" mesajları atmaya başlar hala yanıt alamazsa kapatma yollarına gidebilir.. Neyseki doEvents komutumuz var ki döngünün her dönüşünde sıradaki diğer iş parçalarına (sıradaki kodlar değil, aynı uygulamanın diğer parçaları , başka uygulamalar) çalışma fırsatı doğurular. Tabi bu güzel durum döngünün daha geç bitmesine neden olur.

     

    Sen kodlar sıraya geçsin istemiyorsun. Aynı anda çalışsın istiyorsun

  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ★★★★
    Genki
    Genki's avatar
    Kayıt Tarihi: 24/Ağustos/2005
    Erkek

    hocam vb kullanmayalı uzun zaman oldu ama label de caption changed diye bir event varsa oradanda label2nin captionı değiştirebilirsin belki

     

    buton 1 ile label1.captionu değiştiriyoruz.

     

    label1.captionun changed eventi var ise oradanda 2yi değiştiriyoruz  :P

  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    wking
    wking's avatar
    Kayıt Tarihi: 28/Mart/2010
    Erkek

    Bırakın DoEvents() ve Timer'ı. MultiTasking (MultiThreading) budur işte.

    MultiThreading kullanacaksın hocam. DoEvents() çok yavaşlatır.

  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Hunter
    j4x
    j4x's avatar
    Kayıt Tarihi: 16/Temmuz/2005
    Erkek

    La bi tane doğru düzgün cevap veren adam cikmaz mi :)

    Hocam multi-thread kullan, kac tane islem yaptirmak istiyosan o kadar thread olustur. Ama vb6 da cöküyor bi yerden sonra vb5 lazm illa vbde kullanicaksan hatirladigim kadariyla :/.


    The king is bleeding.
  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    wking
    wking's avatar
    Kayıt Tarihi: 28/Mart/2010
    Erkek

    gVeR bunu yazdı:
    -----------------------------

    La bi tane doğru düzgün cevap veren adam cikmaz mi :)

    Hocam multi-thread kullan, kac tane islem yaptirmak istiyosan o kadar thread olustur. Ama vb6 da cöküyor bi yerden sonra vb5 lazm illa vbde kullanicaksan hatirladigim kadariyla :/.


    -----------------------------

    Çıkar tabii ki, üstündeki mesaja bak :))

  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    wasd
    wasd's avatar
    Kayıt Tarihi: 14/Haziran/2006
    Erkek

    tam bi kod veremicem ama aklıma gelen şu;

    medya playerla flash playerın açılmaları arasındaki süre farkını tespit edersin...önce medya player açılcaksa bunu bi timerla aradaki zaman farkı kadar sonra açılmasını sağlarsın ve iki playerdada vidyo aynı anda açılır... ama bunu uygulamanın zor yanı şu olur; dosya boyutundaki değişim açılmadaki zaman farkıyla doğru orantılı olur,haliyle sabit bi zaman olmaz,bide o aradaki süre farkını hesaplatıp uygulatmak zorunda kalırsın programa,çok sıkıntı yaratır...

    aklıma bu geldi :) :P


    :)
Toplam Hit: 5236 Toplam Mesaj: 19