Bellek kullanımı Hk.

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
Nick_
Üye
Mesajlar: 122
Kayıt: 01 Eki 2007 09:28
Konum: Konya

Bellek kullanımı Hk.

Mesaj gönderen Nick_ »

S.a arkadaslar.. Programımda Fb dekı kayıtları okuyup oracle a aktarıyorum.hersey gayet guzel bı sekılde calısıyor. ancak ozellıkle kayıt sayısı fazla olan tablolara gelınce (40.000, 50.000 kaydı olanlara) asırı sekılde bellek kullanımı oluyor.Mantık belkı yanlıs olabılır Fb dekı her okudugum deger ıcın (insert into ...) sql cumlesı olusturup query a atıyorum. bu bellek kullanımını mın. degere nasıl ındırebılırım?
Bilmemek ayıp değil öğrenmek isteyene öğretmemek ayıp:)
ikutluay
Üye
Mesajlar: 2341
Kayıt: 03 Tem 2007 10:13

Re: Bellek kullanımı Hk.

Mesaj gönderen ikutluay »

Nick_ yazdı:S.a arkadaslar.. Programımda Fb dekı kayıtları okuyup oracle a aktarıyorum.hersey gayet guzel bı sekılde calısıyor. ancak ozellıkle kayıt sayısı fazla olan tablolara gelınce (40.000, 50.000 kaydı olanlara) asırı sekılde bellek kullanımı oluyor.Mantık belkı yanlıs olabılır Fb dekı her okudugum deger ıcın (insert into ...) sql cumlesı olusturup query a atıyorum. bu bellek kullanımını mın. degere nasıl ındırebılırım?
transaction kullanıyorsan bir yerde bunu sonlandırman gerekir. bu kadar bilgiyle aklıma başka birşey gelmiyor
Kişi odur ki, koyar dünyada bir eser. Eseri olmayanın yerinde yeller eser./Muhammed Hadimi
http://www.ibrahimkutluay.net
http://www.ibrahimkutluay.net/blog
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Re: Bellek kullanımı Hk.

Mesaj gönderen aslangeri »

s.a.
tablodaki kayıtların hepsini çektiğin için fazla bellek kullanması normal.
bunun yerine tablolardan (atıyorum) 10 bin kayıt okuyarak yap. ilk 10 bin bitince ikinci 10 bin i oku.
böylelikler fazla bellek kullanmazsın.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
Kullanıcı avatarı
Battosai
Üye
Mesajlar: 1316
Kayıt: 01 Eki 2007 12:02
Konum: Ankara

Re: Bellek kullanımı Hk.

Mesaj gönderen Battosai »

Kayıt demek bellek demek dolayısıyla azar azar kayıtları alıp o şekilde çalışmak lazım...Ayrıca yeteri kadar bellek varsa 50000 kayıttan bişey olmaz daha çok yavaşlama sorunları olur fazla kayıtla çalışırken... böylece bir taş iki kuş olayı gerçekleşir....
Kullanıcı avatarı
Nick_
Üye
Mesajlar: 122
Kayıt: 01 Eki 2007 09:28
Konum: Konya

Re: Bellek kullanımı Hk.

Mesaj gönderen Nick_ »

cevaplarınız ıcın tesekkurler.. bır sorum daha olacaktı. Query.Fetcall dedıgımızde querydekı kayıtları hafızaya alabılıyoruz. pekı ısımız bıtınce bu hafızayı nasıl bosaltırız? Forumda braz arastırdım vt baglantısını sonlandırdıgımız anda hafıza bosalır gıbı bısey yazıyordu. ancak bır vt de bırden fazla tablo oldugunu ve bu tabloların her bırı ıcın fetcall yaptıgımızı dusunursek vt ıle ısımız bıtınceye kadar baya bı hafıza kullanımı oluyor.. bunun yerıne her bır tablo ıle ıslem yapacagımızda fatcall, ısımız bıtıncede hafızayı bosaltma gıbı bısey yapabılırmıyız? (doldur bosalt mantıgı gıbı:S )
Bilmemek ayıp değil öğrenmek isteyene öğretmemek ayıp:)
Kullanıcı avatarı
Battosai
Üye
Mesajlar: 1316
Kayıt: 01 Eki 2007 12:02
Konum: Ankara

Re: Bellek kullanımı Hk.

Mesaj gönderen Battosai »

Datasetteki kayıt sayısına göre sistem bunu kendi ayarlıyor yani Query kullanırken yeni bir sorgu döndüğünde dataset boşaltılıp tekrar yüklendiği için hafıza dinamik ayarlanıyor.Diğer türlüsü close komutu yetiyor olması lazım.....
Cevapla