से पहले क्रियाएं निष्पादित नहीं कर रही हैं। मैं एक ऐसा फ़ंक्शन लिख रहा हूं जिसे वेब-आधारित API को पिंग करते समय रेट-सीमित त्रुटि को पकड़ने की आवश्यकता है।Sys.sleep()
मैं tryCatch
उपयोग कर रहा हूँ त्रुटि को पकड़ने के लिए, और इस समारोह के अंदर मैं निम्न त्रुटि समारोह निर्दिष्ट करें:
error=function(e) {
warning(paste(e,"\nWaiting an hour for rate limit to reset..."))
Sys.sleep(3600) # Wait an hour for rate-limit to reset
return(user.info(user, ego.count))
}
समारोह काम करने के लिए प्रकट होता है, लेकिन स्क्रिप्ट के लिए उत्पादन लॉग जाँच जब मुझे लगता है कि नोटिस चेतावनी संदेश तक के बाद लिखा नहीं गया है, नींद का समय समाप्त हो गया है।
मैं साथ आर कंसोल पर इस व्यवहार को पुनः कर सकते हैं:
print("Drew sucks")
Sys.sleep(10)
दस सेकंड पहले Drew sucks
कंसोल के लिए छपा है गुजरती हैं। मेरे कार्य में, मैं विराम होने से पहले इस लंबे विराम के बारे में उपयोगकर्ता को कुछ प्रतिक्रिया देना चाहता हूं।
इस व्यवहार का कारण क्या है?
पर स्टेटेट प्लगइन के माध्यम से एक्लिप्स से अपेक्षित काम करता है एक बात - यदि कोई 'चेतावनी' का उपयोग करता है तो उपयोगकर्ता संदेश दिखाने के लिए 'suppressWarnings' का उपयोग कर सकता है। इस समाधान के साथ एक और तरीका की जरूरत है। – Marek