18-08-2007, 23:54
|
מנהל פורומי "תכנות ובניית אתרים" ו"חומרה ורשתות"
|
|
חבר מתאריך: 25.10.01
הודעות: 42,775
|
|
טוב אז בדיקה מול שרת אינטרנט הסברתי לך איך... מימוש - תלוי בשפה שבה אתה כותב... (שים לב שאז האפליקציה שלך היא כבר משני חלקים - תוכנת לקוח - וקוד צד שרת בשרת web - או שאפילו תמציא פרוטוקול משלך, למרות שזה נשמע לי מיותר לחלוטין...)
לגבי הטיימרים - פשוט... אם אתה מכריח שהתוכנה תהיה פתוחה כל הזמן - ורק במקרה הזה - המימוש די פשוט. קדם את הזמן לבד, בתוך התוכנה, על ידי טיימר שפוקע נניח כל 24 שעות [טיימר ל 86400 שניות]. כל פעם שהטיימר פוקע, אתה מוסיף למונה את המספר 1 - ומשנה את ה flag שחוסם את הקופון הבא. אחרי הנפקת הקופון הבא, אתה מחליף את ה flag שוב ודורך את הטיימר ל 86400 שניות נוספות. כמובן, שאת ערכו הנוכחי של המונה אתה שומר כל כמה זמן וכמובן בסגירה, כשהוא מוצפן, היכן שאתה רוצה, בצורה כזו שאי אפשר להתעסק איתו [התוכנה תגיע נניח עם קובץ מונה התחלתי מוכן ומוצפן, שאותו תעדכן, בצורה מוצפנת כל הזמן]. ככה, סגירת התוכנה רק תעכב בזמן הסגירה את הקופון הבא (שהספירה לאחור אליו תמשיך מהמקום שהיא הפסיקה בטעינה הבאה של התוכנה). הזזת שעון המחשב לא תשפיע, כי הוא לא אמור להשפיע על טיימר (טוב, אולי זה תלוי במימוש הטיימר ובשפה, ושוב, אני לא יודע במה אתה עוסק בדיוק...). ו....זהו. הבעייתיות היחידה, היא, כאמור, שהתוכנה צריכה לפעול כל הזמן בשביל זה.
האינטרנט הוא פתרון דומה ברעיון (אם תשים לב) - רק שהוא דורש אינטרנט. זה חסרונו. הייתרון הוא שהמחשב לא צריך לפעול כל הזמן...
כמובן שאולי יש אפשרויות נוספות שלא חשבתי עליהן
|