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

نام تاپیک: فعال بودن تابع برای زمانی خاص

  1. #1

    فعال بودن تابع برای زمانی خاص

    سلام
    من با تردینگ میخوام بگم فلان تابع مثلا 4 ثانیه اجرا بشه.
    چطور میتونم این کار کنم؟ آرگومانی چیزی ندیدم تو تابع هاش.

  2. #2

    نقل قول: فعال بودن تابع برای زمانی خاص

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    ترد را 4 ثانیه sleep کنید.
    سلام
    ترد main رو؟
    بببنید من مثلا 10 تا ترد دارم و هر کدام یک زمان خاص داره. یکی 5 ثانیه یکی 10 یکی 20 ثانیه
    میخوام بگم ترد یک 9 ثانیه مثلا اجرا باشه
    تمام شد ترد 2 14 ثانیه اجرا بشه
    این طور

  3. #3

    نقل قول: فعال بودن تابع برای زمانی خاص

    من میخوام یک تایع 10 ثانیه اجرا بشه و بره و تمام
    همین

  4. #4
    کاربر دائمی
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    زنجان
    سن
    35
    پست
    164

    نقل قول: فعال بودن تابع برای زمانی خاص

    هر جا سخن از زمان است نام timer می درخشد ، از نظر بنده استفاده از timer کاربرد بیشتری داره. تابع رو از داخل timer اجرا کن.

  5. #5

    نقل قول: فعال بودن تابع برای زمانی خاص

    داشم تو سوالت بی معنی تابع یه چیزه که یا یه کاری انجتم میده یا یه خروجی داره ولی اگه می خوای یه کار 4 سانیه اجرا بشه باید یه حلقه همراه با thread.sleep()استفاده کنی

  6. #6

    نقل قول: فعال بودن تابع برای زمانی خاص

    نقل قول نوشته شده توسط mehdi zanjani مشاهده تاپیک
    هر جا سخن از زمان است نام timer می درخشد ، از نظر بنده استفاده از timer کاربرد بیشتری داره. تابع رو از داخل timer اجرا کن.
    امکان داره مثالی بزنید؟ متوجه بشیم

  7. #7

    نقل قول: فعال بودن تابع برای زمانی خاص

    نقل قول نوشته شده توسط C#‎‎_best_Programmer مشاهده تاپیک
    داشم تو سوالت بی معنی تابع یه چیزه که یا یه کاری انجتم میده یا یه خروجی داره ولی اگه می خوای یه کار 4 سانیه اجرا بشه باید یه حلقه همراه با thread.sleep()استفاده کنی
    سلام
    من فکر نکنم sleep به درد ما بخوره. چون شاید ترد کارش تمام هست و ترد دیگه تو حافظه نمونه و خاتمه پیدا کنه با sleep همچنان ترد وجود داره

  8. #8

    نقل قول: فعال بودن تابع برای زمانی خاص

    بيا اين كارو بكن
    تابع رو با thread اجرا كن بعد يك تايمر رو فعال كن مثلا رو 4 ثانيه تايمر كه اجرا شد thread.abort رو اجرا كن

  9. #9

    نقل قول: فعال بودن تابع برای زمانی خاص

    بوسیله ترد: اول زمان خاتمه را محاسبه کنید و تا زمانی که زمان حال حاضر کوچکتر از زمان انقضا هست کاری رو انجام بدید:

    private void button1_Click(object sender, EventArgs e)
    {
    Thread t = new Thread(new ThreadStart(MyMethode));
    t.IsBackground = true;
    t.Start();
    }

    private void MyMethode()
    {
    DateTime expirationTime = DateTime.Now.AddSeconds(4);
    while (DateTime.Now < expirationTime)
    {
    // do somthings
    }
    }

  10. #10

    نقل قول: فعال بودن تابع برای زمانی خاص

    نقل قول نوشته شده توسط Mahmoud.Afrad مشاهده تاپیک
    بوسیله ترد: اول زمان خاتمه را محاسبه کنید و تا زمانی که زمان حال حاضر کوچکتر از زمان انقضا هست کاری رو انجام بدید:

    private void button1_Click(object sender, EventArgs e)
    {
    Thread t = new Thread(new ThreadStart(MyMethode));
    t.IsBackground = true;
    t.Start();
    }

    private void MyMethode()
    {
    DateTime expirationTime = DateTime.Now.AddSeconds(4);
    while (DateTime.Now < expirationTime)
    {
    // do somthings
    }
    }
    سلام
    2 تا مشکل هست. یکی abort کردن ترد هست و دومی اینکه اگر 100 تابع داشته باشیم باید 100 بار این موارد رو تعریف کنیم.

  11. #11

    نقل قول: فعال بودن تابع برای زمانی خاص

    من به یک همچنن چیزی نیاز دارم.

     For 4 sec
    {
    T.Start()
    next
    T.Abort
    }

  12. #12

    نقل قول: فعال بودن تابع برای زمانی خاص

    سلام
    اينو ببينWindowsFormsApplication17.zip

  13. #13

    نقل قول: فعال بودن تابع برای زمانی خاص

    نقل قول نوشته شده توسط irpersian20 مشاهده تاپیک
    سلام
    2 تا مشکل هست. یکی abort کردن ترد هست و دومی اینکه اگر 100 تابع داشته باشیم باید 100 بار این موارد رو تعریف کنیم.
    abort برای چی؟ بعد از 4 ثانیه حلقه و در نتیجه ترد به کارش خاتمه میده.

    با تایمر هم میتونید انجام بدید. در رویداد تیک تایمر کارهاتون رو انجام بدید و بعد تایمر رو استاپ و از بین ببرید:

    System.Windows.Forms.Timer timer = new System.Windows.Forms.Timer();
    timer.Interval = 4000;
    timer.Tick += (object obj, EventArgs ea) =>
    {
    timer.Dispose();

    // do somthing Here
    };
    timer.Start();
    آخرین ویرایش به وسیله Mahmoud.Afrad : پنج شنبه 24 اسفند 1391 در 03:15 صبح

  14. #14

    نقل قول: فعال بودن تابع برای زمانی خاص

    ConsoleApplication3.zip

    ---------------------------------------------------------------------------------

تاپیک های مشابه

  1. سوال: تابع برای چک کردن فعال یا غیر فعال بودن سایت
    نوشته شده توسط billgivz در بخش PHP
    پاسخ: 1
    آخرین پست: شنبه 17 اردیبهشت 1390, 16:21 عصر
  2. سوال: کند بودن تابع count برای 5 هزار رکورد به بالا
    نوشته شده توسط mmd2009 در بخش دسترسی به داده ها (ADO.Net و LINQ و ...)
    پاسخ: 3
    آخرین پست: دوشنبه 06 دی 1389, 07:52 صبح
  3. سوال: غیر فعال بودن فرم هنگام Show کردن آن (بگو برای چی؟)
    نوشته شده توسط Rejnev در بخش C#‎‎
    پاسخ: 2
    آخرین پست: جمعه 18 تیر 1389, 22:47 عصر
  4. سوال: قرار دادن یک مدت مشخص برای فعال بودن یه نرم افزاز
    نوشته شده توسط mmd2009 در بخش برنامه نویسی در 6 VB
    پاسخ: 8
    آخرین پست: جمعه 15 آبان 1388, 13:27 عصر
  5. سوال: کاربرد پارامتر بودن یک تابع برای تابع دیگر چیست؟
    نوشته شده توسط vahid.bz در بخش C#‎‎
    پاسخ: 3
    آخرین پست: پنج شنبه 17 اردیبهشت 1388, 18:55 عصر

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

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