java - Program getting executed indefinetly after comparing with system time -
स्पष्टीकरण - स्टार्टटाइम को एक मेज से प्राप्त किया जा रहा है (EX- 2014-07-25 12:00:00)
स्टार्टवर्क () सम्मिलन समारोह
करें {लंबे समय = startTime.getTime () + (((59 * 60) + 59) * 1000); तिथि का समयटाईम = नया दिनांक (समय); System.out.println ("जानकारी: कॉलिंग स्टार्टवर्क (" + स्टार्टटाइम + "," + एंड-टाइम + ")"); स्टार्टवकर् (स्टार्टटाइम, एंडटाइम); StartTime = नई तिथि (startTime.getTime () + (60 * 60 * 1000)); SystemHour = नया दिनांक (नया तारीख ()। मिलन (), नई तिथि ()। मिलन (), नई तिथि ()। मिलना (), नई तिथि ()। GetHours (), 0, 0); स्ट्रिंग स्ट्रिंगटोओअपडेट लास्टप्रोसेक्टटाइम = "अपडेट मीटर_थ्रेड सेट करें last_processed_time = '" + sdf.format (startTime) + "' जहां नाम = 'गेटवे पार्क अधिग्रहण'"; mysqlStatement.executeUpdate (stringToUpdateLastProcessedTime); } जबकि (startTime.getTime ()! = SystemHour.getTime ()); System.out.println ("जानकारी: लाइव मोड में स्विच करना"); थ्रेड। नींद (1000 * 55 * 60); मुझे जो समस्या आ रही है वह यह है कि, कार्यक्रम को भविष्य की तारीखों के लिए निष्पादित किया जा रहा है यदि टेबल से प्राप्त शुरुआत का समय है (पूर्व -2014-07-25 12:00:00) और
कृपया मुझे गलत होने में मदद करें।
मैं बदलूंगा:
जबकि (startTime.getTime ()! = SystemHour.getTime ()) के लिए
जबकि (startTime.getTime () & gt; systemHour.getTime ()) के बजाय है असंभव (लगभग असंभव) है कि आपका लूप चेक प्रारंभ समय तत्काल मिलिसेकंड से मेल खाएगा।
Comments
Post a Comment