Як закрити сокет у C?

2 Закриття сокета. Коли ви закінчите використовувати розетку, ви можете просто закрийте його файловий дескриптор за допомогою close ; див. Відкриття та закриття файлів. Якщо все ще є дані, які очікують на передачу через з’єднання, функція нормального закриття намагається завершити цю передачу.

Закрити() Закриває з’єднання Socket і звільняє всі пов’язані ресурси.

Використовуйте команду *CANCEL,TCP щоб припинити з’єднання з вузлом або сокетом. До того, як ця команда набере чинності, дозволено завершити всі активні дії з передачі та отримання.

close() розблоковує (видаляє) усі незавершені блокування записів, які процес має на пов’язаному файлі. Поведінка для сокетів: виклик close() вимикає сокет, пов’язаний із сокетом дескриптора сокета, і звільняє ресурси, виділені для сокета. Якщо сокет посилається на відкрите з'єднання TCP, з'єднання закрито.

Далі ми вивчили операції завершення роботи та закриття, застосовані до сокетів. Ми можемо зробити висновок, що, хоча і мають схожі характеристики, виконання операції завершення роботи не знищує сокет; замість цього він просто обмежує свої комунікаційні можливості відповідно до режиму роботи.

Коли ви закінчите використовувати розетку, ви можете просто закрийте його файловий дескриптор за допомогою close ; див. Відкриття та закриття файлів. Якщо все ще є дані, які очікують на передавання через з’єднання, функція нормального закриття намагається завершити цю передачу.