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

نام تاپیک: اجرای خودکار برنامه در یک بازه زمانی مشخص

  1. #1
    کاربر دائمی آواتار Yasersadegh
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    اروميه
    پست
    393

    Exclamation اجرای خودکار برنامه در یک بازه زمانی مشخص

    سلام
    من می خوام که برنامه ای که نوشتم هر یک ساعت یکبار خوکار اجرا بشه و یا اینکه یکبار اجرا بشه و بعد از اون هر یکساعت یکبار دستورات مورد نظر رو انجام بده. در واقع یه جورایی همون مقیم توحافظه باشه.
    برای اینکار من راه حل استانداردی رو نمی دونم ولی راهی که به ذهنم خورده استفاده از یک حلقه بینهایت در ابتدای دستورات است که ساعت جاری رو داریم بعد در حلقه چک می شود که اگر یکساعت از آن گذشته بود دستورات را اجرا کند وگرنه دوباره چک کند. این کار رو تا بینهایت انجام میدهد.
    ضمنا برنامه تحت کنسول بوده و با دستوراتی کنسول را مخفی کرده ام .
    حالا می خواهم ببینم راه حل بهترو فنی تر وجود داره(که حتما وجود داره.) چیه؟ من برای اینکار باید چکار کنم.

    با تشکر

  2. #2
    کاربر دائمی آواتار Yasersadegh
    تاریخ عضویت
    اردیبهشت 1386
    محل زندگی
    اروميه
    پست
    393
    کسی نمی خواد در این زمینه یه کمکی به من بکنه.!!؟

  3. #3
    1) یک راه ساده و خوب می تواند همان حلقه while بینهایت باشد به این شکل که از Sleep برای مدت زمان مشخصی در داخل حلقه استفاده شود تا CPU مصرف نشود ، این تابع جز توابع 32 بیتی و قابل استفاده در کنسول نیز هست.

    2) استفاده از توابع همزمان سازی ها برای thread ها ، مانند WaitForSingleObject برای معلق سازی اجرا بدون مصرف اضافی منابع سیستم. همانند روش قبل

    3) راه دیگر استفاده از برنامه win32 بدون پنجره یا نمای خاصی به جای برنامه کنسول می باشد و سپس استفاده از timer ها.

    4) استفاده از service ها که کار آسانی نیست ولی کنترل زیادی به شما خواهد داد که فکر نمی کنم برای کار های ساده چندان به کار شما بیاید

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

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