עבור לתוכן

הפעלת שיטת מתוזמנת ב-C#

Featured Replies

פורסם

האם ניתן ב-C# להפעיל שיטה בשעה מסויימת, למשל ישנה תוכנית שרצה 24 שע', בכל יום

בשעה למשל 11 בלילה צריכה לרוץ שיטה כלשהי.

איך והאם ניתן ליישם זאת

תודה

פורסם

אם התכנית רצה כל הזמן, אז אפשר פשוט לולאה שכל פעם מבצעת מה שצריך לעשות, ועושה Thread.Sleep לפי כמה זמן שנשאר עד השעה 11 בלילה למחרת. אם לא, אז אפשר לעשות את זה עם Scheduled Task.

פורסם
  • מחבר

פתרתי את הפעלת השיטה בשעה 11 כל יום ע"י שימוש ב-DateTime.Now.Hour אבל שאני מפעיל את השיטה לא קורה מה שאמור לקרות, ואני אסביר.

נניח שיש מערך כלשהו שמייצג תפוסת כיסא, יש לו 3 מצבים 0,1,2 מצב 0 כיסא פנוי ולכן יוצג בצבע ירוק, מצב 1 נבחר יוצג כחול מצב 2 תפוס יוצג אדום.

השיטה המתוזמנת מאפסת את המערך כלומר, מציבה 0 בכל תאיו.

מצב הכסאות מוצג גרפית (כיסא שתמונתו מתחלפת בהתאם למצבו) כאשר השעה מגיעה המערך מתאפס אבל מצב הכיסאות לא משתנה אלא אחרי שאני סוגר את המערכת ומפעיל מחדש רק אז אני רואה את השינוי, איך אוכל לראות זאת online ולא רק אחרי סגירה והפעלה מחדש.

אגיד עוד שמצב המערכת נשמר כל 10 דקות ע"י שימוש בקובץ XML והשיטות Serialization ו-Deserialization.

פורסם
  • מחבר

מדובר על פרויקט של 15 מחלקות בערך, אז לא יעזור לך קטע הקוד הספיציפי, את הבעיה הבנת?

פורסם

מה שקורה הוא שאתה מעדכן את המערך, אבל הUI לא מתעדכן?

מדובר בUI שהוא דף אינטרנט, או winforms?

פורסם
  • מחבר

winform

פורסם

שים טיימר של 45 שניות ששואל כל פעם האם השעה היא נכונה, ואם כן מבצע את מה שבא לך.

פורסם
  • מחבר

מה זה יפתור לי? אני כבר יודע איך להפעיל את השיטה בזמן שאני רוצה?

פורסם

מה אתה מסתבך?

אז תדאג שהטיימר גם יעדכן את ה GUI

פורסם
  • מחבר

אמירה סתומה למדי, איך הטיימר יעדכן אותו

פורסם

אני לא יודע איך התוכנית שלך בנויה, אך אתה יכול לתזמן שבשעה 11 ושניה תריץ את פונקצית הציור שלך... אתה מצייר כסאות לא?

ההנחה היא שפונקצית הציור שלך סורקת את הDB שלך ומציירת לפי עדכון אחרון.

מקווה שזה עוזר

פורסם
  • מחבר

לא בדיוק, המסך הראשי הוא זה שדואג לאיפוס כל הכיסאות, לחיצה על כפתור ההזמנה מעבירה למסך בו רואים את כיסאות האולם ולמרות זאת עדיין לא תקין.

לא ברור למה...[br]פורסם בתאריך: 3.04.2010 בשעה 22:08:10


טוב חבר'ה מצאתי את הבעיה, psychuil קבל את התנצלותי הכנה, לא יודע אם לזה התכוונת, אבל נראה לי שכן.

הפעלתי טיימר שבודק כל שניה האם השעה היא 11:00:00 ואז רק יריץ את איפוס האולם וזה מתעדכן און ליין רק הייתי צריך להריץ בנוסף

לאיפוס האולם גם לשמור את ה-XML ולאחזרו...

תודה לכולם.

פורסם

אמירה סתומה למדי, איך הטיימר יעדכן אותו

חבוב תהיה נחמד ניסיתי לעזור.

אין הוקוס פוקוס. זה שאתה משנה ערכים במערך, זה לא ישנה שום דבר מעבר לזה.

אתה צריך בנוסף גם לעדכן את ה GUI, ובתור זה שכתב את הקוד, אתה אמור לדעת איך לעשות את זה, בעזרת רענון התמונות/טעינה מחדש/XML או איך שלא עשית את זה.... (אתה יצרת את הGUI אז אתה אמור לדעת איך, לא אף אחד אחר)

אז בבקשה תגיב בצורה נורמלית . (אפילו אם מישהו זורק לך אמירה סתומה)

העיקר שהסתדרת.

פורסם
  • מחבר

סתומה לא במובן של העלבה, סתומה מלשון סתמית, בלי הרבה תוכן שיסביר את כוונתך.

לא הייתה כוונה להעליב אחי.

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים