- iPhone topik
- Apple Watch
- Samsung Galaxy A55 - új év, régi stratégia
- Samsung Galaxy A56 - megbízható középszerűség
- Vivo X200 FE – fenséges méret
- Fotók, videók mobillal
- EarFun Air Pro 4+ – érdemi plusz
- Telekom mobilszolgáltatások
- Honor Magic8 Pro - bevált recept kölcsönvett hozzávalókkal
- Milyen okostelefont vegyek?
Új hozzászólás Aktív témák
-
leslie23
tag
Sziasztok!
Segítséget, vagy magyarázatot szeretnék kérni tőletek a következő probléma kapcsán, StackOverflow relevánsnak tűnő kérdéseit már átnyálaztam, de nem találtam számomra választ. Van egy WinForms alkalmazás, amivel SQL queryket szeretnék végrehajtani (kb. 70-80 darabot, egyenként 5-15 másodperc az execution time) a lekérdezések eredményeit pedig Excel-állományokba menteni. Nem parallel async végrehajtás működik, viszont kicsit tempósítandó a dolgokat átírtam Parallel.Foreach segítségével, a szimultán szálakat 15 darabban maximalizálom. Az SqlConnection using blokkban van, ennek ellenére az alábbi hibaüzenetet kapom: "The timeout period elapsed prior to obtaining a connection from the pool. This may have occurred because all pooled connections were in use and max pool size was reached."
Ha a connection stringbe belefoglalom a Connection Timeout = 0 paramétert, akkor megintcsak lefut szépen a cucc. Próbáltam szintén a connection stringben állítani a Max Pool Size-et de nem volt hatása. Sajnos nem értem, hogy pontosan mi történik, ha jól értem a using végén a kapcsolat zárásra kerül és bekerül a connection poolba. Viszont ezután miért történik timeout, mikor a következő szálon ismét szükség lenne a connectionre?
Illetve ha Timeout van, miért nem tud új kapcsolatot létrehozni?Köszönöm, ha valaki rá tud világítani mi itt a kulcs.
És egyből egy másik kérdésem is lenne; a Excelt az Interop liben keresztül kezelem. Neten azt találtam, hogy maga a COM Interop nem thread safe, feltételezem ez az oka annak, hogy parallel futásnál időnként COM error, application busy üzenetet kapok (5 futásból egyszer). Alternatív megoldásként felmerült, hogy a parallel végrehajtásnál csak egy DataSetben tárolnám a lekérdezések eredményeit, majd ezt követően egy külön műveletben sorosan generálnám le az Excel-riportokat. A kérdésem, hogy mennyire célszerű nagy mennyiségű adatot (pl. 80 query, egyenként 30-40 mező és 10-12 ezer rekord) memóriában tárolni míg elér a folyamat az Exceles lépésig?
Vagy mi lehet itt best practice szerintetek?
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Vác és környéke adok-veszek beszélgetek
- WLAN, WiFi, vezeték nélküli hálózat
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Konzolokról KULTURÁLT módon
- Xbox Series X|S
- Milyen TV-t vegyek?
- Amazon Prime Video
- Pécs és környéke adok-veszek-beszélgetek
- Fejhallgató erősítő és DAC topik
- iPhone topik
- További aktív témák...
- Lenovo ThinkPad X13 - i5-10210u
- Lenovo ThinkPad T440s i5 (12GB RAM / 240GB SSD) + Eredeti Ultra Dokkoló (40A1) - Iroda, Diák
- Új HP 15 Victus FHD IPS 144Hz i7-13620H 4.9Ghz 10mag 16GB 1TB SSD Nvidia RTX 5060 8GB Win11 Garancia
- Dell Latitude 7300 Core i5-i7, 8-16GB RAM, SSD, jó akku, számla, 6 hó gar
- Dell Latitude 7410 Core i5-10310u, 16GB RAM, SSD, jó akku, számla, 6 hó gar
- Bomba ár! Dell Latitude E6430 - i5-3GEN I 8GB I 128-256SSD I HDMI I 14" HD+ I W10 I Garancia!
- HIBÁTLAN iPhone 12 Pro Max 128GB Pacific Blue -1 ÉV GARANCIA - Kártyafüggetlen, 100% Akkumulátor
- Lenovo IdeaPad 3 - 15,6" Full HD - AMD Athlon Silver 3050U - 4GB - 512GB SSD - Win10 PRO - MAGYAR
- BESZÁMÍTÁS! 1TB Samsung 870 QVO 2,5" SATA SSD meghajtó garanciával hibátlan működéssel
- GYÖNYÖRŰ iPhone 14 Pro Max 256GB Deep Purple-1 ÉV GARANCIA - Kártyafüggetlen, MS4398, 100% Akksi
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest
Illetve ha Timeout van, miért nem tud új kapcsolatot létrehozni?
Vagy mi lehet itt best practice szerintetek?

