Bilgisayar-Bilişim Teknolojileri
Ana Sayfa
Bilişim Teknolojileri Forumu Son Konuları
24 Saat
Bilişim Teknolojileri - Formatör - Bilgisayar Öğretmeni Kayıt
Kayıt Olun
iletişim
iletişim
Detaylı Arama
Arama

Kodda bekletme yapma

Konu, 'Visual Basic' kısmında ercrah tarafından paylaşıldı.


Sayfayı Paylaş /bbnetsosyal

  1. ercrah

    ercrah Aktif Üye

    Kayıt:
    27 Aralık 2010
    Mesajlar:
    170
    Beğeni:
    3
    selam arkadaşlar. kıt programlama bilgimle bluestack üzerinden oynadığım bir oyun için bot yazmaya calışıyorum.
    oyunun yapısı gereği ekran değişimi gereken yerlerde kısa süreli bekleme yapmam gerekiyor.
    beklemeler 0,1 sn ile 4 sn arasında değişiyor.

    senaryo 1:

    threading.thread.sleep komutu kulandığımda program çalışıyor. işlemci kullanımı %0 ile %1 aralığında ram kullanımı en fazla 6mb.

    fakat sorun şu, program görev yöneticisinde "yanıt vermiyor" şeklinde ve kilitlenmis gibi davranıyor. araya girip müdahale edilemiyor.

    senaryo 2;

    internetten bulduğum başka bir bekletme fonksiyonu kullandığımda kilitlenme felan yok.

    ama işlemci kullanımı % 25 - % 30 arasında, ram ise 30mb.



    programı kilitlemeden işlemci kullanımını asgari seviyede tutacak başka bir yöntem varmıdır ?
     
  2. muratti32

    muratti32 Aktif Üye

    Kayıt:
    25 Eylül 2007
    Mesajlar:
    208
    Beğeni:
    3
  3. ercrah

    ercrah Aktif Üye

    Kayıt:
    27 Aralık 2010
    Mesajlar:
    170
    Beğeni:
    3
    cok sagolun.
     
  4. ercrah

    ercrah Aktif Üye

    Kayıt:
    27 Aralık 2010
    Mesajlar:
    170
    Beğeni:
    3
    Yeni konu açmadan, farklı bir soruna çözüm arayışı.

    Yukaridaki programda Kodlama bitti, deneme asamasindayim.

    Program herhangi bir kodlama hatası vermiyor. Düzgün olarak çalışıyor ama tam süre belli olmamakla beraber 2-3 saat arası çalıştıktan sonra en basit ve hatasız kodda hata verip çalışmayı bırakıyor.

    Hata örnekleri:

    bluestack programının açık olup olmadığını arada bir kontrol ediyor.
    Onlarca kez hata yok, sonra birden hata oluşturuyor.

    Ekrandaki belli bir noktanın piksel değeri kontrol edilirken hata oluşuyor. Ki sonuç olarak true veya false değeri döndürmesi gerekiyor. Bunu zaten 2 saat içinde en az 1000 kez yapıyor. Ama bazen hata veriyor.

    Bunun gibi oluşmaması gereken en basit değer ataması, klavyeden bir tuşa basılması, bir diziden değer okunması gibi her seferinde farklı bir satırda hata çıkıyor.

    Yanlış değer ataması veya gereksiz kod varmı diye onlarca kez kontrol ettim ama sorun bulamadım.

    Bir öneri veya başka her türlü cevap çok makbule geçer.
     
  5. Programlayan

    Programlayan Aktif Üye

    Kayıt:
    19 Mayıs 2008
    Mesajlar:
    137
    Beğeni:
    0
    Hatayı görsek belki daha iyi olurdu,
    Lakin sorun "threading nightmare" gibi duruyor, thread le ilgili kodlarını görürsek belki birşey diyebiliriz.
    form donuyor ise, threadin çağırdığı fonksiyonda Application.DoEvents(); satırını bir eklemeyi deneyin.
     
  6. ercrah

    ercrah Aktif Üye

    Kayıt:
    27 Aralık 2010
    Mesajlar:
    170
    Beğeni:
    3
    Formda donma yok. Kodları background worker ile ayrı kanaldan çalıştırıyorum.

    hata veren kod, hata verene kadar yüzlerce kez calismis oluyor zaten.
    Durduk yere neden hata verir ki? Onu anlayamıyorum.

    Son hata resmi

    https://i.hizliresim.com/76YZVY.png
     
    Son düzenleme: 17 Ocak 2018

Sayfayı Paylaş /bbnetsosyal