מחלקת HttpClient מתאימה יותר כיחיד עבור לדומיין יחיד של אפליקציה. המשמעות היא שיש לחלוק את הסינגלטון על פני מחלקות מיכל מרובות. עם הטקטיקה הזו, אתה כן מקבל יחיד, אבל זה מקשה על השיתוף. המחלקה HttpClient מיישמת את הממשק IDisposable.
האם עלינו ליצור מופע יחיד חדש של HttpClient עבור כל הבקשות?
למרות שהוא מיישם את הממשק IDdisposable, הוא למעשה אובייקט משותף. זה אומר שמתחת לכיסויים הוא חודר וחוזר בטוח. במקום ליצור מופע חדש של HttpClient עבור כל ביצוע, צריך לשתף מופע בודד של HttpClient למשך כל חיי האפליקציה.
האם עליך לעשות שימוש חוזר ב-HttpClient?
HttpClient מיועד להפעלה פעם אחת ולשימוש חוזר לאורך כל חיי האפליקציה. יצירת מחלקה HttpClient עבור כל בקשה ימצה את מספר השקעים הזמינים בעומסים כבדים. זה יגרום לשגיאות SocketException.
האם HttpClient אינו מנוהל?
למרות ש-HttpClient מיישם בעקיפין את הממשק IDisposable, השימוש הסטנדרטי ב-HttpClient הוא לא להיפטר ממנו לאחר כל בקשה. האובייקט HttpClient נועד לחיות כל עוד האפליקציה שלך צריכה לבצע בקשות
האם HttpClient בטוח בשרשור?
HttpClient בטוח לחלוטין כש בשימוש עם מנהל חיבורים בטוח, כגון MultiThreadedHttpConnectionManager. … באותו הזמן יש לחלוק את מופע ה-HttpClient ומנהל החיבורים בין כל השרשורים ליעילות מירבית.