نمایش نتایج 1 تا 7 از 7

نام تاپیک: ساخت دیکشنری

  1. #1

    Question ساخت دیکشنری

    سلام
    من دارم یک دیکشنری میسازم. برای لغات نمیخوام از دیتابیس استفاده کنم. از SortedDictionary که در C#‎.Net هست استفاده میکنم. با توجه با اینکه تعداد لغات حدود 300,000 تا هست، سرعت لود برنامه بسیار پایین هست و تقریبا رو سیستم من 20 ثانیه طول میکشه تا لود شه. لود لغات به این صورت هست:

    public SortedDictionary<string, string> en = new SortedDictionary<string, string>();

    en.Add("limpet", "n. marine mollusk with a cone shaped shell which adheres to rocks along the shoreline; one who refuses to let go, one who clings");
    en.Add("limpid", "adj. transparent; easy to understand, clear, unclouded; calm, serene");
    en.Add("limpidity", "n. clearness; transparency; calmness, stillness");
    en.Add("limpidly", "adv. clearly; transparently; calmly");
    en.Add("limpidness", "n. clearness; transparency; calmness, stillness");


    به نظرتون برای افزایش سرعت چیکار کنم؟ میشه همین رو تو C++‎ پیاده کرد؟ سرعت فرقی میکنه؟

    ممنون

  2. #2

    نقل قول: ساخت دیکشنری

    کسی نظری نداره؟

  3. #3
    کاربر دائمی آواتار haghft
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    https://t.me/pump_upp
    پست
    400

    Smile نقل قول: ساخت دیکشنری

    گرچه کلا با این روش موافق نیستم ولی میتونی از backgroundworker استفاده کنی که نحوه استفادشو تو نمونه ذکر کردم و برای قسمت سرچشم از LINQ استفاده کن.
    فایل های ضمیمه فایل های ضمیمه

  4. #4

    نقل قول: ساخت دیکشنری

    ممنون.
    کد MultiThread اینه:
    backgroundWorker1.RunWorkerAsync();


    میشه در مورد RunWorkerAsync کمی توضیح بدید و اینکه دستوراتی رو که اجرا میکنه از کجا میاره؟ (چون دستورات تو یه تابع دیگه هستن و تو این کد، اون توابع فراخوانی نشدن!؟)

  5. #5
    کاربر دائمی آواتار haghft
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    https://t.me/pump_upp
    پست
    400

    نقل قول: ساخت دیکشنری

    ممنون.
    به جاش از دکمه تشکر استفاده کنید.
    چرا دیگه،در رویداد DoWork هرچی بنویسید انجام میده در واقع وقتی شما RunWorkerAsync رو میزنید رویداد DoWork انجام میشه در یک ترد(نخ) جدید.

  6. #6

    نقل قول: ساخت دیکشنری

    میدونم. ولی کجا تعریف کردیم که این تابع رو اجرا کنه؟؟

  7. #7
    کاربر دائمی آواتار haghft
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    https://t.me/pump_upp
    پست
    400

    نقل قول: ساخت دیکشنری

    نقل قول نوشته شده توسط sepehr1014 مشاهده تاپیک
    میدونم. ولی کجا تعریف کردیم که این تابع رو اجرا کنه؟؟
    مگه شما تو رویداد DoWork ننوشتی؟هر چی تو DoWork بنویسی رو تو یه نخ جدید اجرا میکنه دیگه!

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •