Merhaba arkadaşlar.
Win 7 de çalışan bir programı yavaşlatmak istiyorum. Yani az sistem kaynağı o programa ayrılsın ve yapması gereken işi normalden daha uzun sürede yapsın istiyorum. Bu mümkün mü? Öyle ise nasıl yapabilirim.
Process Lasso ile kontrol etmek istediğiniz programa ayrılacak işlemci sayısını, işlem önceliğini vs. ayarlayabiliyorsunuz. Programda çok detay var, hepsine hakim değilim, inceleyin isterseniz.
https://bitsum.com/processlasso/
Elle yapılacaksa, görev yöneticisinden uygulama sağ tıklanır,
"işleme Git" kısmından uygulamanın işlemine gidilir.
O da sağ tıklanır. "öncelik ata" den "Düşük" seçilir. Varsayılan hali "normal" dir
teşekkürler arkadaşlar. Yöntemler tam istediğim sonucu vermedi. Sanırım işlemci pek fazla yüklenmediğinden yine program normal çalışıyor.
özel değilse programı öğrenebilir miyim? belki başka çözümler bulabiliriz.
Yavaşlatmadan kasıt nedir, onun detaylandırılması gerekir.
Program,
Belleğimi az veya yavaş hızla kullanacak veya
Harddisk erişimi,
ekran kartı erişimi,
İşlemci kullanım oranı,
harici port kullanımları mı yavaşlatılıcak.
ben herhangi bir işlemin başlama ve bitiş arasındaki sürenin uzatılması olarak algıladım. Kullanılan dil uygunsa, exe içerisinde işlem yaparken sürekli uğranan adreslerin uygun yerlerine Sleep komutu koymayı düşünmüştüm.
Alıntı yapılan: kutahyaspor - 08 Ocak 2016, 15:50:48
ben herhangi bir işlemin başlama ve bitiş arasındaki sürenin uzatılması olarak algıladım. Kullanılan dil uygunsa, exe içerisinde işlem yaparken sürekli uğranan adreslerin uygun yerlerine Sleep komutu koymayı düşünmüştüm.
O zaman işlemci meşgul edilmiş olmaz mı? Arkadaş hem yavaş çalışacak hemde kaynaklar az kullanılacak diyor.
İsteğin daha detaylandırılması lazım.
zaten saniyede milyarlarca satır işletiliyor, tahminimce sadece işlem süresi uzar, CPU kullanımı artmaz. yine de denemek lazım.
c# ile yazılmış bir program var. Programın bir yerde comportu kapatıp tekrar açıyor. Tam bu sırada "eleman bulunamadı" hatası alıyorum. Kendi programımda yaklaşık 80 milisaniyelik bir bekleme sonrasında comportun kapatıldıktan sonra tekrar sorunsuz açıldığını gördüm.
Tam olarak yapmak istediğim comportun kapatılıp tekrar açılması esnasında programı durdurmak yada işleyişini yavaşlatmak idi.
Alıntı yapılan: Salih - 08 Ocak 2016, 17:05:48
O zaman işlemci meşgul edilmiş olmaz mı?
Sleep komutu VB de CPU'ya işkence için kullanılıyor :)
Alıntı yapılan: kantirici - 08 Ocak 2016, 17:40:40
c# ile yazılmış bir program var. Programın bir yerde comportu kapatıp tekrar açıyor. Tam bu sırada "eleman bulunamadı" hatası alıyorum. Kendi programımda yaklaşık 80 milisaniyelik bir bekleme sonrasında comportun kapatıldıktan sonra tekrar sorunsuz açıldığını gördüm.
Tam olarak yapmak istediğim comportun kapatılıp tekrar açılması esnasında programı durdurmak yada işleyişini yavaşlatmak idi.
O zaman Timer bileşeni kullanarak, 100ms gecikme sonrası işlem yapacaksın.
Yapacağın işlem için cpu'da bir thread açıp, o thead'i sleep edersen diğer işlemler etkilenmez.
İstediğin kadar bekler, istediğin kadar iş yapar..
Tabii yazılıma bu derece müdahale edebilmek için source kod gerekiyor..
Özür, ben yanlış anlamışım. Arkadaş, çalışan program için soruyormuş.
Söylediklerimi geri alıyorum. :)
Elimde exe vari source code yok maalesef.
Çalışan exenin thread'ini dışarıdan suspend,resume yapabiliyoruz. Bu işlemi kesik kesik yaparsak program yavaşlamış olur. 10 saniyede toplam 5saniye suspend olsa 2kat yavaslar.
Dışarıdan suspend nasıl yapılır? Ufak bir program yazmak gerek.
Proccess explorer uygulaması bunu yapabiliyor. Benzer işlevde küçük bir program yazılır.
Küçük bir kod yaz.
şuna benzer bir şey olsun.
n=0;
m:=0;
A:
n=n+1;
if n<10000000 then goto A;
sleep(1);
m=m+1;
if m<10000 then goto A;
Amaç PCyi kasmak. O pc için m ve n i deneme yanılma ile bulabilrsin.
Gerekirse m ve n yi float değişken tanımla ve büyük değerler ver.