मैं http अनुरोध करने के लिए HttpURLConnection क्लास का उपयोग कर रहा हूं। मेरे कोड इस-HttpURLConnection.getInputStream() ब्लॉक
while(true){
try{
connection=(HttpURLConnection)url.openConnection();
connection.setDoOutput(true);
connection.setConnectTimeout(2*1000);
InputStream in=connection.getInputStream();
}
catch(SocketTimeOutException e){}
catch(IOException e){}
}
मैं डेटा पर कुछ प्रसंस्करण कर एक बार मैं InputStream वस्तु पुनः प्राप्त करने की तरह कुछ लग रहा है। मेरी समस्या यह है कि यदि मैं कार्यक्रम को काफी देर तक चलाता हूं, तो इनपुटस्ट्रीम ब्लॉक प्राप्त करने के लिए कॉल और मैं इसे कभी नहीं मिला।
क्या मुझे कुछ याद आ रही है? किसी भी संकेतक या मदद की सराहना की जाएगी। धन्यवाद।
कभी भी इस तरह की चीज़ 'पकड़ें (सॉकेटटाइमऑटएक्सप्शन ई) {} '' (सत्य)' लूप में कभी नहीं करें। यह आपके प्रोग्राम को गहराई से डीबग या रोकना बहुत कठिन बना देगा। – artbristol
@artbristol आप क्या कहने की कोशिश कर रहे हैं ... यह हमारे उत्पादन कोड से है :) –
@artbristol के रूप में करने के अलावा कहता है कि आपने 'connection.setDoOutput (true) 'पर टिप्पणी करने का प्रयास किया है, इसका मतलब है कि यह आपको कॉल करने की उम्मीद कर रहा है 'connection.getOutputStream() 'और एचटीपी बॉडी –