• 1

كيف أنفذ أوامر بشكل دوري في بايثون؟

أستخدم نظام ويندوز وأريد تنفيذ دالة تسمى foo() كل مدة معينة (مثلا كل 10 ثواني) إلى أن أقوم بإيقاف البرنامج، فما هي الطريقة الصحيحة لفعل ذلك؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 1

يوجد العديد من الطرق في بايثون يمكن من خلالها تنفيذ دالة كل مدة معينة تحددها أنت مسبقا، فيمكنك مثلا في نهاية دالة foo() أن تنشئ Timer والذي سيستدعي foo() نفسها كل 10 ثواني لأن دالة Timer ستنشئ خيط جديد لاستدعاء foo() وفي هذه الحالة يمكنك القيام بأشياء الأخرى في نفس الوقت.
مثال على كيفية استخدام دالة Timer من وحدة threading (لاحظ أن الوقت الذي مررناه بالثواني):

>>> import time, threading
>>> def foo():
...   print(time.ctime())
...   threading.Timer(10, foo).start()
...
>>> foo()
Thu Dec 22 14:46:08 2011
>>> Thu Dec 22 14:46:18 2011
Thu Dec 22 14:46:28 2011
Thu Dec 22 14:46:38 2011
1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن