PDA

View Full Version : تعریف زمانبند



pswin.pooya
جمعه 09 مهر 1389, 13:40 عصر
سلام
من دارم یه برنامه حسابداری می نویسم. توی برنامه یک تایمر گذاشتم که بررسی میکنه که موعد چک رسیده یا نه و اگر رسیده باشه به کاربر اطلاع بده. مشکل اینجاست که اینکار به شدت پروسس CPU رو میگیره. آیا راه دیگه ای هست که به کمک اون بتونم یکسری event رو ثبت کنم و خود ویندوز یا برنامه زمانی که موعد فرا برسه به برنامه اطلاع بده (مثلا یک event و یا تابع فراخوانی بشه.)

water_lily_2012
جمعه 09 مهر 1389, 14:14 عصر
تایمر گذاشتی که چی بشه
تایمر نیاز نداری
موعد چک ثانیه ای که نیست، یا امروز موعد چکه یا فردا و یا یک روز دیگه
یه جایی ثبت کن تاریخ چک را و هر بار برنامه حسابداری باز شد که معمولا هر روز باز می شه
اگه موعد چک رسیده گزرش می ده

pswin.pooya
جمعه 09 مهر 1389, 14:19 عصر
تایمر گذاشتی که چی بشه
تایمر نیاز نداری
موعد چک ثانیه ای که نیست، یا امروز موعد چکه یا فردا و یا یک روز دیگه
یه جایی ثبت کن تاریخ چک را و هر بار برنامه حسابداری باز شد که معمولا هر روز باز می شه
اگه موعد چک رسیده گزرش می ده


تایمر به غیر از اون کارهای دیگه مثل ست کردن زمان داخل تسک بار رو انجام میده. اما بیشترین چیزی که پروسس میگیره همین قضیه و یکی دو مورد دیگه هستش که باید دقیقه ای رخ بدن. مثلا 45 دقیقه بعد باید یه پروسس انجام بگیره یا مثلا هر روز ساعت 12 باید حسابها بسته بشن و ... (اینکار باید خوکار باشه)

group45
جمعه 09 مهر 1389, 14:21 عصر
شما چرا کار رو سختش کردید؟؟؟ چه کاریه !!!! :متفکر:
هر بار که برنامه اجرا میشه تاریخهای پبت شده در دیتابیس رو بگیره و با تاریخ سیستم مقایسه کنه و اون تاریخهایی که برابر شدن اطلاعاتشون رو یه جایی ینویسه.

water_lily_2012
جمعه 09 مهر 1389, 14:27 عصر
شما چرا کار رو سختش کردید؟؟؟ چه کاریه !!!! :متفکر:
هر بار که برنامه اجرا میشه تاریخهای پبت شده در دیتابیس رو بگیره و با تاریخ سیستم مقایسه کنه و اون تاریخهایی که برابر شدن اطلاعاتشون رو یه جایی ینویسه.


من هم همین را گفتم

group45
جمعه 09 مهر 1389, 15:32 عصر
جناب water_lily_2012 عزیز
بنده یکم دستم کنده تو نوشتن و زمانی که ارسال کردم دیدم شما هم فرستادید :لبخند:

water_lily_2012
جمعه 09 مهر 1389, 17:46 عصر
آقا از نوشته من ناراحت نباشید قصد جسارت به شما را نداشتم
فقط خواستم بگم جواب هر دوتای ما یکی هست تا سوال کننده گیج نشه

sds1920
جمعه 09 مهر 1389, 18:01 عصر
واقعا منم تعجب کردم که چرا تایمر برای این کار استفاده کردین.
شما هر کاری رو که نیاز دارید توی تایمر انجام بدین ولی کارهایی که روزانه باید چک بشه رو
ابتدای برنامه انجام بدین.
نیازی نیست همه ی کارها رو با یک تایمر انجام بدین.
ولی اگه چیزی غیر از تایمر می خواین از threat باید استفاده کنید.

pswin.pooya
جمعه 09 مهر 1389, 19:09 عصر
آقایون لطفا به سوال جوا بدین. راهی به جزء تایمر بلدین؟؟

سوال: من میخوام هر روز فرد ساعت 11 برنامه به من آلارم بده و روزهای زوج ساعت 12

mohsensaghafi
جمعه 09 مهر 1389, 19:43 عصر
سلام دوست عزیز.
چیزی که الان به ذهنم می رسه اینه که شما یه تایمر جدا گانه واسه این کار در نظر بگیر. یک بار که اجرا شد، زمان باقی مانده تا مثلا ساعت 11 یا 12 رو با توجه به زوج یا فرد بودن روز بگیر و بعد اون رو به میلی ثانیه تبدیل کن و به interval تایمرت انتساب بده. دفعه بعدی که اجرا بشه باید کاری رو که باید انجام بده، انجام بده. اینطوری busy waiting هم نخواهی داشت.