मैंने एक टीसीपीआईपी सर्वर लिखा है जो एक फाइलसिस्टम वाटर का उपयोग करता है और एफएसडब्लू द्वारा अधिग्रहित नई फाइलों से पार्स किए गए डेटा के साथ एक कतार भरता है।क्या मुझे प्रत्येक लेनदेन के बाद सॉकेट (टीसीपीआईपी) बंद करना चाहिए?
एक एकल ग्राहक इस सर्वर से कनेक्ट होगा और कतार से डेटा मांगेगा (किसी अन्य ग्राहक को किसी भी समय कनेक्ट करने की आवश्यकता नहीं होगी)। यदि कोई डेटा मौजूद नहीं है, तो ग्राहक प्रतीक्षा करेगा (1 सेकंड) और पुनः प्रयास करें।
दोनों ग्राहक और सर्वर असीमित रूप से लिखे गए हैं - मेरा प्रश्न है: क्या क्लाइंट प्रत्येक लेनदेन (थोड़ी देर के अंदर) के लिए एक नई सॉकेट बना सकता है, या बस सॉकेट को खोलें (जबकि लूप के बाहर)?
client.Connect()
while(bCollectData)
{
... communicate ...
Thread.Sleep(1000);
}
client.Shutdown(SocketShutdown.Both);
client.Close();