Linux终端退出程序后,TCP地址仍被占用

报错如下:
Error on binding: Address already in use
在这里插入图片描述
这是一个正在运行的服务器,运行在linux的终端。上一次我使用Ctrl+Z退出这个程序,再次./my_server想运行这个程序时,出现这个报错。这是由两点原因:
1、守护进程或服务
某些程序可能被设计为守护进程或作为系统服务运行。这些程序在启动后会独立于启动它们的终端,持续运行以提供特定的服务。
例如,Web 服务器(如 Nginx、Apache)通常被配置为服务,它们在系统启动时自动启动,并在后台持续运行,监听特定的端口,而不受终端的影响。
2、终端退出方式不当
如果是在终端中启动程序,在退出终端时确保使用正确的方法来终止程序。例如,可以在终端中按下Ctrl + C发送中断信号来终止程序,然后再关闭终端。
如果程序是作为系统服务运行,使用相应的服务管理工具(如systemctl、service命令等)来停止服务。例如,对于 Nginx 服务,可以使用sudo service nginx stop来停止 Nginx 服务器。

首先是我使用Ctrl+Z退出程序实际上是不正确的方式,这会导致程序资源没有完全被回收,所以当我用这个不正确方法退出程序后,这个进程仍在进行http请求监听。
下次我使用Ctrl+C退出程序,或者使用sudo lsof -i :PORT【PORT替换为使用的端口号】查看当前的占用端口的进程,获取进程的PID,然后使用命令sudo kill -9 PID【PID替换为查到的PID】销毁进程就可以了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/3375.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

嵌入式通信协议:IIC简明学习笔记

IIC学习笔记 IIC特点 1.适合 小数据场合使用,传输距离短。 2.只能有一个主机。 3.标准IIC速度为100kHZ,高速IIC一般可达400kHZ以上。 4.SCL和SDA都需要接上拉电阻(大小由速度和容性负载决定,一般在3.3k-10k之间)。 5…

基于anaconda的python3.6安装opencv4.1.15

opencv-python一些新版本由于部分函数涉及专利问题,如sift和surf,有些功能不能很好地被使用,所以最好使用opencv-python 3.4.1.15版本的。 下载地址分别为: 1、https://pypi.tuna.tsinghua.edu.cn/simple/opencv-python/ 查找…

【自制操作系统】0x01MBR

环境 ubuntu 20.04 gcc 9.4.0(加载硬盘程序之前都是,最后可能会切换到 gcc 4.4) bochs 2.7 bochs 配置 bochs 安装之前文章记录过,现在记录一下本次使用的bochs配置 bochsrc #第一步,首先设置 Bochs 在运行过程中…

SpringBoot接入星火认知大模型

文章目录 准备工作整体思路接入大模型服务端和大模型连接客户端和服务端的连接测试 准备工作 到讯飞星火大模型上根据官方的提示申请tokens 申请成功后可以获得对应的secret,key还有之前创建的应用的appId,这些就是我们要用到的信息 搭建项目 整体思…

ssm056基于Java语言校园快递代取系统的设计与实现+jsp(论文+源码)_kaic

毕 业 设 计(论 文) 题目:校园快递代取系统设计与实现 摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本校园快递代取系统…

简单语音信号识别的MATLAB仿真

简单语音信号识别的MATLAB仿真 摘要: 隐马尔可夫模型(HMM)作为描述语音信号的一种统计模型,在现代语音处理中获得了广泛应用。本文概述了基于HMM的语音识别技术,阐述了预处理,特征提取以及训练&#xff0c…

童年玩具:两款线绳陀螺

1,2图是过去用来安装明线电线的瓷夹。现在应该找不到了。过去安装电线后,家里留下了一些,拿来做线陀螺非常好。 因为它非常重,旋转起来很有力,那声音呼呼响。 3,4图是现在都能看到的一个圆木片,两个孔,穿绳…

AntFlow一款开源免费且自主可控的仿钉钉工作流引擎

在现代企业管理中,流程审批的高效性直接影响到工作的流畅度与生产力。最近,我发现了一个非常有趣的项目——AntFlow。这个项目不仅提供了一个灵活且可定制的工作流平台,还能让用户以可视化的方式创建和管理审批流程。 如果你寻找一个快速集成…

光纤资源APP开发及二次开发说明

光纤资源APP主要由以下几部分组成: 登录界面选择项目界面地图创建节点界面填写详细信息界面成端及端口表界面接续及接续表界面 其中1、2、4界面不需要涉及到ht,故用原生界面即可实现,但是3、5、6涉及到ht,而ht在app中是不兼容的…

鉴源实验室·如何通过雷达攻击自动驾驶汽车-针对点云识别模型的对抗性攻击的科普

01 引 言 随着自动驾驶技术的迅速发展,雷达和激光雷达等传感器在自动驾驶汽车中的作用愈发重要。它们能够生成3D点云数据,帮助车辆实时感知周围环境并做出安全决策。然而,尽管这些传感器对驾驶环境的检测非常精确,它们也面临一种…

Stable Diffusion(2024)Ai绘画AIGC最新安装包资源下载+自学教程

以下内容为整理的Stable Diffusion保姆级教学内容,请购买的资料的同学务必认真学习!按以下步骤操作快速掌握Stable Diffusion这个工具! Stable Diffusion(简称SD)是一款地表最强AI绘图工具(AIGC)之一,Stab…

基于单片机的宠物自动喂食系统的设计

本设计以STM32单片机为核心控制器,搭载了OLED显示屏作为显示交互模块,HX711称重模块获取食物重量,ESP8266与手机APP通信从而远程控制,PWM输出控制舵机模拟投喂食物开关打开,驱动继电器控制水泵打开加水,HC-…

vue+websocket实现即时聊天平台

目录 1 什么是websocket 2 实现步骤 2.1 导入依赖 2.2 编写代码 1 什么是websocket WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议。它主要用于在客户端和服务器之间建立持久的连接,允许实时数据交换。WebSocket 的设计目的是为了提高 Web 应用程序的…

Spring Boot框架:大学城水电管理自动化

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统,它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等,非常…

关于三色标记算法的理解

三色标记算法是一种垃圾标记的算法,用于cms和g1。 它将对象分为3种颜色: 1.白色对象:未被标记的对象 2.灰色对象:自身被标记,引用的其它对象还没被标记 3.黑色对象:自身以及所引用的对象都被标记完 标记过…

Python Matplotlib:基本图表绘制指南

Python Matplotlib:基本图表绘制指南 Matplotlib 是 Python 中一个非常流行的绘图库,它以简单易用和功能丰富而闻名,适合各种场景的数据可视化需求。在数据分析和数据科学领域,Matplotlib 是我们展示数据的有力工具。本文将详细讲…

深入探讨SEO分析技巧助力网站流量提升

内容概要 在当前的数字化时代,SEO分析的重要性不言而喻。它是提升网站流量的关键工具,帮助站长有效地优化网站内容和结构。通过系统的SEO分析,站长可以掌握用户搜索行为和需求,从而制定出更具针对性的内容策略。例如,…

配置QINQ

1. 配置公司A和公司B的私有网络&#xff0c;创建对应的VLAN&#xff0c;并且接口的链路类型 S3的配置: 系统视图进入&#xff1a; <Huawei>system-view 设置设备名称为s3&#xff1a; [huawei]sysname s3 创建VLAN 10和20&#xff1a; [s3]vlan batch 10 20 配置Gigabit…

react 中配置@寻找文件

安装插件craco npm i -D craco/craco 创建 craco.config.js文件放在根目录和package.json同级 const path require(path)module.exports {webpack: {alias: {"": path.resolve(__dirname, "src")}} }创建 jsconfig.config.js文件放在根目录和package.js…

基于Qt的独立线程创建与多线程执行实验Demo

一、多线程与线程池的应用目的[1][4] &#xff08;一&#xff09;多线程 一个进程内多个线程并发执行的情况就叫多线程&#xff0c;每一个线程是一个独立的执行流。多线程是一种编程模型&#xff0c;它与处理器无关&#xff0c;与设计机制有关。 需要多线程的原因包括&#xf…