PDA

View Full Version : سوال: افزایش سرعت پردازش برای تشکیلی لیست



tthenry14plus
پنج شنبه 19 شهریور 1388, 19:19 عصر
سلام
در جایی لیست treeView باید به مانند زیر با خواندن اطلاعات از جداول مختلف مختلف لینک شده تشکیل شود.

http://www.picamatic.com/show/2009/09/10/07/02/5035715_212x513.jpg

هیچ مشکلی در تشکیل این لیست نیست، فقط به علت حجم زیاد اطلاعات، تشکیل این لیست در سیستم هایی با پردازنده های کمتر از 2GHz زمانبر است (هرچند که این لیست حین اجرا پر شده و مانع کار کردن کاربر نمیشود)

پردازش نیز با استفاده از Backgorund Worker انجام میپذیرد.

سوالی که داشتم: چه راهی برای افزایش حداکثری سرعت در تشکیل این لیست دارم؟

مشابه چنین لیستی در سیستم های مختلف (مثل شکل زیر) به کرّات وجود دارد که حین اجرا باید تشکیل شود اما به ظاهر هیچ زمانی گرفته نمیشود و به محض اجرا شما لیست کامل شده را مشاهده میکنید.....

http://www.picamatic.com/show/2009/09/10/07/15/5035925_200x442.jpg

لطفا اگر اطلاعاتی دارید راهنمایی کنید...

als_1360
پنج شنبه 19 شهریور 1388, 20:37 عصر
فكر مي كنم ليست ويندوزي با استفاده از ايندكسها و يا چيزي شبيه به اون ساخته مي شه .

Reza_Yarahmadi
جمعه 20 شهریور 1388, 11:28 صبح
یه روش میتونه به این صورت باشه که توی لود برنامه (یا TreeView) فقط نودهای پدر رو لود بشن و با کلیک بر روی هر نود ، برنامه ، نودهای فرزند رو از بانک بخونه و به درخت اضافه کنه. توی این حالت چون تعداد نودی که قراره به درخت اضافه بشه کمه ، وقت چندانی نمیگیره و تقریبا به سرعت انجام میشه.

tthenry14plus
جمعه 20 شهریور 1388, 21:26 عصر
جناب Reza_Yarahmadi (http://barnamenevis.org/forum/member.php?u=97318) از راهنماییتون متشکرم، این روش میتونه روش کارامدی باشه اما در مورد این برنامه به دلیل شرایطی که هست نمیتونه زیاد کارامد باشه.
دوستمون به ایندکس گذاری اشاره کردن. به نظرتون چطور میتونم این روش رو پیاده کنم. چون اصل سوال من چگونگی تشکیل لیست کامل در کمترین زمانه....

als_1360
جمعه 20 شهریور 1388, 22:22 عصر
نمي دونم برنامه تون چه جوري كار مي كنه ولي مي تونيد در پس زمينه برنامه اون رو لود كنيد بعد از هر چند دقيقه يكبار اون رو باز هم در پس زمينه ريفريش كنيد و تغييرات رو اعمال كنيد

tthenry14plus
پنج شنبه 26 شهریور 1388, 02:06 صبح
ممنونم اما توضیح دادم که برنامه در پس زمینه کار میکنه، بحث من تشکیل لیست در کوتاهترین زمان است...