الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف اجعل في موقعي Timer

بدأه yamoo في 30 يوليو 2008 · 13 رد · 1,424 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

اخوتي الاحبة سؤال محيرني وارغب في معرفته

لدي صفحة جاهزه لارسال البريد الالكتروني ولدي رغبه في عمل مؤقت او Timer يقوم بارسال رسالة على بريدي في توقيت معين انا اختاره

سؤالي فقط كيف يعمل المؤقت على السيرفر بدون اي تدخل مني

ولكم تحياتي

#2

عمل Schedual لمهام معينة داخل ASP.NET أمر صعب ... نظراً لأن ASP.NET يعتبر Stateless لا يعمل إلا عند حدوث أفعال من المستخدم ... وبالتالي لضبط موقعك ليعمل أشياء تلقائية دون أفعال من المستخدم أوتوماتيكياً ليس بالسهل .. بل صعب ومعقد بعض الشيء ..

والبديل الأفضل هو استخدام السيرفر وعمل الجدولة على ويندوز السيرفر ..

ولو مصر على عمل ذلك الأمر الصعب ... يمكنني إمدادك بالفكرة إن شاء الله وإن كنت لا أنصحك بها ...

ASP.NET Team Leader

moh_kin_mah@hotmail.com

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

لو أعجبك أي من مشاركاتي ... برجاء قم بتقييم المشاركة عبر الأزرار الموجودة أسفل يسار كل مشاركة

#3

يمكنك أن تقوم بعمل Schedual task بشرط أن يكون الموقع المستضيف فيه يدعم ذلك

#4

moh_kin

الف شكر على تجاوبك وياليت تمدني بالفكرة

kathy

الف شكر واتمنى ان تسترسل اكثر في شرح Schedual task

#5

بس الموضوع مش معقد قوي فيه حلول الي حد ما مقبولة و سهله

علي العموم الموقع اللي شغال فيه الان فيه اكثر من scheduler

الفكرة بسيطة

في حدث application start تقوم بعمل thread خاص بال scheduler

و تقوم بتمرير الدالة التي تريد تنفيذها لل thread

و داخل الدالة تستخدم delay بالوقت اللي تريده

هوه مش افضل حل بس مش مرتبط بالسرفر و الكلام ده وشغال معايا تمام

#6

بس الحل ده يا أخي الكريم أحمد الباز صحيح في حالة لو هاتعمل Schedual يشتغل لمرة واحدة ... إيه الحل لو عاوز مهمة معينة تتكر تلقائي يوم 5 من كل شهر الساعة 1ص؟؟؟ أو مثلاً مهمة معينة تشتغل كل 17 ساعة؟؟؟

ASP.NET Team Leader

moh_kin_mah@hotmail.com

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

لو أعجبك أي من مشاركاتي ... برجاء قم بتقييم المشاركة عبر الأزرار الموجودة أسفل يسار كل مشاركة

#7
اقتباس
بس الحل ده يا أخي الكريم أحمد الباز صحيح في حالة لو هاتعمل Schedual يشتغل لمرة واحدة ... إيه الحل لو عاوز مهمة معينة تتكر تلقائي يوم 5 من كل شهر الساعة 1ص؟؟؟ أو مثلاً مهمة معينة تشتغل كل 17 ساعة؟؟؟

اسف انا نسيت نقطة

تستخدم While true مع ال delay في الدالة التي تمرر لل thread

شغال تمام...

#8

يا سلام عليك اخي احمد الباز

بس لو تضع مثال عملي على هذا الكلام او ترفق بروجكت صغير اكون لك من الشاكرين

ومنك نتعلم

والشكر موصول لكل من ساهم في الرد

#9

اخواني الكرام لدي طلب صغير ...

هل من أحد يترجم أو يعرف المصطلحات التي تتحدثون عنها و لكم جزيل الشكر

#10

عندي فكرة ابسط وهي استخدام تقنية Ajax فهي تحتوي على Timer تستطيع استخدامه بسهولة

لا اعلم ان كانت فكرتي خطا ام لا ولكن احببت ان اشارككم الراي اخواني

#11
اقتباس
عندي فكرة ابسط وهي استخدام تقنية Ajax فهي تحتوي على Timer تستطيع استخدامه بسهولة

لا اعلم ان كانت فكرتي خطا ام لا ولكن احببت ان اشارككم الراي اخواني

لا خطأ احنا بنتكلم عن حاجة تانية :lol:

while(try)

{

// write your own code

System.Threading.Thread.Sleep(1000);

}

while(true)
{
// write your own code

System.Threading.Thread.Sleep(1000);

}

طبعا داخل الدالة المررة لل Thread

#12

هناك طريقه افضل باستخدام الCaching.

تستطيع وضع قيمه في الCache مع زمن محدد وعند انتهاء صلاحيه وجود القيمه يقوم الCache باطلاق داله ومن خلال هذه الداله تستطيع القيام بما تريد.

#13
EnigmaOX كتب:
هناك طريقه افضل باستخدام الCaching.

تستطيع وضع قيمه في الCache مع زمن محدد وعند انتهاء صلاحيه وجود القيمه يقوم الCache باطلاق داله ومن خلال هذه الداله تستطيع القيام بما تريد.

بالفعل هذا هو أسلم وأقوى حل ... بمعنى أن تضيف عند بدء تشغيل الموقع كود يضيف كاش .. وفي الإضافة تحدد مدة Expiration له وهذه هي المدة الزمنية بين كل تشغيل Schedual .. مثلاً شهر ... وتحدد أيضاً في Parameters الخاص بإضافة الكاش تحدد Delegate معين تلقائي يشتغل عند حدوث Expirations للكاش .. طبعاً ستضيف أنت كودك الخاص الذي تريد تشغيله زمنياً في هذه Delegate وكذا تعيد إنشاء تكوين الكاش

تفضلوا إخوتي شرح كامل لهذه الفكرة ... حياكم الله جميعاً

http://www.codeproject.com/KB/aspnet/ASPNETService.aspx

محمد قناوي

تم تعديل هذه المشاركة بواسطة moh_kin في 2 أغسطس 2008 في 09:24

ASP.NET Team Leader

moh_kin_mah@hotmail.com

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

لو أعجبك أي من مشاركاتي ... برجاء قم بتقييم المشاركة عبر الأزرار الموجودة أسفل يسار كل مشاركة

#14

الف شكر اخي محمد قناوي

وجاري التجربة

مواضيع مشابهة