Saat Başı İşlem Yaptırmak

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
turkcanfidan
Üye
Mesajlar: 380
Kayıt: 31 Eki 2005 03:26

Mesaj gönderen turkcanfidan »

tuanna yazdı:peki biz bunu 60 çarpsak ne olur... o zaman işlemci daha az kullanılmazmı...?
bende intervali kısa tutunca işlemciyi daha fazla yorarız gibi düşünüyordum, uzun tutunca sistem kaynaklarını daha fazla tüketiyor.
Kullanıcı avatarı
vkamadan
Kıdemli Üye
Mesajlar: 1935
Kayıt: 17 Mar 2004 03:52
Konum: Adapazarı
İletişim:

Mesaj gönderen vkamadan »

Merhaba ,
Timer ile sadece saat başı olup olmadığını kontrol edecekseniz yani VT sorgusu felan yapmayacaksınız, bunu saniyede bir yapmanızın, gereksiz yere tanımlanmış bir değişkenin yada nesnenin harcağı sistem kaynağından fazla harcayacağını düşünmüyorum.
Volkan KAMADAN
www.polisoft.com.tr
Kullanıcı avatarı
tuanna
Üye
Mesajlar: 582
Kayıt: 06 Ara 2004 05:01
Konum: Ankara
İletişim:

Mesaj gönderen tuanna »

turkcanfidan yazdı:
tuanna yazdı:peki biz bunu 60 çarpsak ne olur... o zaman işlemci daha az kullanılmazmı...?
bende intervali kısa tutunca işlemciyi daha fazla yorarız gibi düşünüyordum, uzun tutunca sistem kaynaklarını daha fazla tüketiyor.

bu kanıya nerden vardınız acaba...
Siz hayal edin...Biz yapalım TuannaSoft...
turkcanfidan
Üye
Mesajlar: 380
Kayıt: 31 Eki 2005 03:26

Mesaj gönderen turkcanfidan »

bir programı 24 Saatte bir çalıştırmak için interval değerini 1000*60*24 kadar yapınca bilgisayar bellek yetersiz dedi bir süre sonra. Intervali küçültünce düzeldi. Demekki sayaç için bellekten daha fazla yer ayırması gerekiyor.
Kullanıcı avatarı
nitro
Üye
Mesajlar: 1112
Kayıt: 23 Ağu 2004 01:18
Konum: Çanakkale
İletişim:

Mesaj gönderen nitro »

turkcanfidan yazdı:bir programı 24 Saatte bir çalıştırmak için interval değerini 1000*60*24 kadar yapınca bilgisayar bellek yetersiz dedi bir süre sonra. Intervali küçültünce düzeldi. Demekki sayaç için bellekten daha fazla yer ayırması gerekiyor.
hocam enteresan bir noktaya parmak bastık sanırım. bu konuda bellek izlemesi yapabilen bir programla olay denense de ortak bir kanıya varılsa çok iyi olur sanırım. programlarımızda timer kullanıyoruz. sisteme artılarını ve eksilerini iyi bilmemiz avantajımız olur bence.
saygılarımla
Kullanıcı avatarı
Trial_Cooder
Üye
Mesajlar: 236
Kayıt: 17 Nis 2006 04:44

Mesaj gönderen Trial_Cooder »

Ben Buldum Galiba :)

Şuan İnternet Kafedeyim Kod Veremicem, Yanlış Olur.

Form.Create'te O Anki Dakikayı Bulup 60'tan Çıkartacaksın Ve Timer.Interval'ini Çıkan Sonuca Ayarlayacaksın. Yani Kod Olarak
(Kodları Kafadan Yazıyorum)

Kod: Tümünü seç

procedure FormCreate(Self: Boolean);
var
 Dakika: String;
begin
Dakika := TimeToStr(Minute);
Dakika := //Burada 60'tan Dakikayı Çıkartıp Dakikaya Yazdırın
Timer.Interval := Dakika; //Olmazsa PChar(Dakika) kullanın
Timer'ın OnTimer'ına;

Kod: Tümünü seç

ShowMessage('Saat Başı');
Timer1.Interval := 3600000;
Bu Alttaki Linkte Tarih Ve Saat Fonksiyonları Var Bu Yukardaki İşlemleri Yaparken İşinize Yarar
http://www.delphiturkiye.com/datetime.htm
turkcanfidan
Üye
Mesajlar: 380
Kayıt: 31 Eki 2005 03:26

Mesaj gönderen turkcanfidan »

Bu da güzel bir çözüm. :idea:
Kullanıcı avatarı
Hancet
Üye
Mesajlar: 107
Kayıt: 08 May 2005 01:18
Konum: Burdan...
İletişim:

Mesaj gönderen Hancet »

Arkadaşlar verdiğinizin cevaplar için teşekkür ederim.

yazılanları okuyunca kafama bir soru daha takıldı.
eğer deneyen varsa saat dolunca timer'da ki kod çalışıyor ve 1 dk dolana kadar da çalışmaya devam ediyor. timer'i durdurmak için başka bir timer kullanıyorum. sadece saat başı işlem için 2 timer kullandım.
1-2 tanede başka bi işlem için dersek fomda 3-4 tane timer oluyor.
sistem kaynakları haddinden fazla tüketiliyor yani

Bu konuda fikri veya önerisi olan var mı?

Kolay Gelsin...
Varmı Beni İçinizde Tanıyan?
Yaşanmadan Çözülmeyen Sır Benim
Kalmasada Şöhretimi Duymayan,
Kimliğimi Tarif etmek zor Benim.
Kimsesizim hısmım da çok, hasmım da,
Görünmezim cismim de yok, resmim de,
Dil üzmezim, tek hece var ismimde,
Barınağım Delphi denen yer Benim..!
ulu coder
Üye
Mesajlar: 838
Kayıt: 01 Nis 2006 06:46
Konum: Ankara

Mesaj gönderen ulu coder »

sonsaat adında global bir değişken tanımlayın.
Timer'da sonsaat'in o anki saatle aynı olup olmadığını konrol edin.
Eğer eşitse kodların çelışmasına izin vermeyin.
Eşit değilse kodlar çalışsın ve sonsaat=geçerli saat olsun.
sako
Üye
Mesajlar: 477
Kayıt: 11 Haz 2003 02:40
Konum: ERZURUM

Mesaj gönderen sako »

Ben bir programda saniye başı query çalıştırıyorum. Bu mantıksız bi durummu oluyo sizce. Yani problem açmadı henüz ama veritabanı arttıkça problem olur mu sizce ? Başka bi yol tavsiye eden varmı...

Kolay gelsin...
DOĞUNUN SINIR TAŞI ERZURUM'UN DADAŞ'I
EFE'Sİ VAR İZMİR'İN EĞİLMEZ TÜRK' ÜN BAŞI
Kullanıcı avatarı
nitro
Üye
Mesajlar: 1112
Kayıt: 23 Ağu 2004 01:18
Konum: Çanakkale
İletişim:

Mesaj gönderen nitro »

eğer çalışan querynin sql kodları aynı değil ise mantıklı. ama aynı ise daha iyi çözümler bulunabilir. saniye başı query çalıştırmanızdaki amaç nedir?
aklıma tek bi sebep geliyor, hani program ağ üzerinde çalışır falan, diğer bilgisayarlara kayıtlar anında yansısın diye falan olabilir, ama ibevents varken böyle bişeye gerek yok.
sako
Üye
Mesajlar: 477
Kayıt: 11 Haz 2003 02:40
Konum: ERZURUM

Mesaj gönderen sako »

not defterine girdiği saat dakika ve saniyede kullanıcıyı uyarması gerekiyor. Bundan daha iyi bi yöntem bulamadım ben :)
DOĞUNUN SINIR TAŞI ERZURUM'UN DADAŞ'I
EFE'Sİ VAR İZMİR'İN EĞİLMEZ TÜRK' ÜN BAŞI
Kullanıcı avatarı
tuanna
Üye
Mesajlar: 582
Kayıt: 06 Ara 2004 05:01
Konum: Ankara
İletişim:

Mesaj gönderen tuanna »

Hancet yazdı:Arkadaşlar verdiğinizin cevaplar için teşekkür ederim.

yazılanları okuyunca kafama bir soru daha takıldı.
eğer deneyen varsa saat dolunca timer'da ki kod çalışıyor ve 1 dk dolana kadar da çalışmaya devam ediyor. timer'i durdurmak için başka bir timer kullanıyorum. sadece saat başı işlem için 2 timer kullandım.
1-2 tanede başka bi işlem için dersek fomda 3-4 tane timer oluyor.
sistem kaynakları haddinden fazla tüketiliyor yani

Bu konuda fikri veya önerisi olan var mı?

Kolay Gelsin...
neden sana önerdiğim jedi bileşini kullanmıyorsunuz anlamadım....
ya açıyorsunuz alarm nesnesini items özelliğine 24 saat başını yazıyorsunuz...on alarm eventine de yapılaması gereken işi yazıyorsunuz...
o saat geldiğinde o işi yapıyor...
En son tuanna tarafından 24 May 2006 10:34 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Siz hayal edin...Biz yapalım TuannaSoft...
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

sako yazdı:not defterine girdiği saat dakika ve saniyede kullanıcıyı uyarması gerekiyor. Bundan daha iyi bi yöntem bulamadım ben :)
Not defterine girdiği saniyenin önemi var mı gerçekten? Yani siz işlerinizi evet saat tam 13:35:55'de şunu yapacağım mı diyorsunuz yoksa 13:35'de mi?

Söylemek istediğim şey gerçekten zaman kritik bir uygulama değilse, illa şu saniyede yapılması gereksizse böyle kullanmayın. Dakika'ya geçin ve dakika başı kontrol ederek sistemi rahatlatın.
Kullanıcı avatarı
tuanna
Üye
Mesajlar: 582
Kayıt: 06 Ara 2004 05:01
Konum: Ankara
İletişim:

Mesaj gönderen tuanna »

sako yazdı:Ben bir programda saniye başı query çalıştırıyorum. Bu mantıksız bi durummu oluyo sizce. Yani problem açmadı henüz ama veritabanı arttıkça problem olur mu sizce ? Başka bi yol tavsiye eden varmı...

Kolay gelsin...

query çalıştırıyorum
bu sanki sorun olmazda query ne yapıyor keşke desenizki query de su kodları kullandım...su işi yaptırmak için ...bunu yapma sebebim su ve bu ne gibi avantajları ve dez avantajları var... :D
Siz hayal edin...Biz yapalım TuannaSoft...
Cevapla