首页 > 系统相关 >关于进程运行时交流的想法

关于进程运行时交流的想法

时间:2022-09-27 18:25:08浏览次数:46  
标签:socket 想法 server 线程 send 进程 import 交流 客户端

【问题抛出】: 之前已知有一个困惑,那就是网站,以及一些软件是如何做到实时控制的,现在有了一点想法,应该是通过开启一个新的线程专门与其他进程交流。

【示例】:在客户端运行时远程添加输出

【具体描述】:

1,服务端:循环打字,并开启一个新的线程从客户端接受字符串加入打字列表
2,客户端:向服务端发送字符串
3,通信方式:socket

【代码】:

【服务端】
from socket import *
import _thread
import time

list = ["nihao"]
#线程函数,从客户端获取字符串
def receive_input(socket : socket):
    server_socket, client_addr = socket.accept()
    print(client_addr)
    while(True):
        text = server_socket.recv(1024)
        list.append(text.decode("gbk"))
#使用有连接的socket
socket = socket(AF_INET, SOCK_STREAM)
address =("",5000)
socket.bind(address)
socket.listen(10)
#开启线程,注意第一个参数是函数的名字,不带括号;
#第二个参数是函数的参数,要求是元组,元组内只有一个参数的话后面要加逗号","
_thread.start_new_thread(receive_input,(socket,))

while(True):
    print(list)
    print("---------------------------------------")
    time.sleep(2)
【客户端】
from socket import *

socket = socket(AF_INET, SOCK_STREAM)

server_ip = "127.0.0.1"
server_port = 5000
socket.connect((server_ip, server_port))

while(True):
    send_data = input("--输入--:")
    socket.send(send_data.encode("gbk"))

标签:socket,想法,server,线程,send,进程,import,交流,客户端
From: https://www.cnblogs.com/wyh-s/p/16735480.html

相关文章

  • SQLServer 杀死数据库下所有进程 将数据库改为多用户
    杀死所有进程USEmastergoDECLARE@SqlNVARCHAR(max)SET@Sql=''select@Sql=@Sql+'kill'+cast(spidasvarchar(50))+';'fromsys.sysprocesseswhere......
  • mysql5.7 分配子账户和解决进程错误
    mysql5.7和5.6还是有稍微的区别,关键点在于5.7分配子账户之后需要分配进程权限。否则navicate点击表设计报错。//1.mysql显示所有的创建的用户:SELECTDISTINCTCONCAT('......
  • Linux常用基本命令(进程管理类)
    进程管理类进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源。 7.1ps查看当前系统进程状态ps:processstatus......
  • 【转载】Python -- 多进程、多线程 的基本使用
    https://www.cnblogs.com/jiyu-hlzy/p/15948408.html 单进程单线程importtimedefproduction():"""间隔一秒,模拟一秒生产一个任务,生产10个任务:ret......
  • 区分进程和线程
    区分进程和线程进程是cpu资源分配的最小单位,进程可以包含多个线程。浏览器就是多进程的,每打开的一个浏览器窗口就是一个进程。线程是cpu调度的最小单位,同一进程下的各个......
  • 二--6.进程通信
    1.进程通信概念及分类   2.消息传递通信实现方式   消息缓冲队列通信机制 ......
  • 【Linux】有名管道实现进程间通信——一个简单聊天程序
    有名管道实现简单聊天程序1."你来我往"式简单聊天函数功能:简单聊天程序,两个程序a和b,a向b发送信息,b接收信息,b向a发送信息,a接收信息;...源码参考:chatA.c#include<std......
  • 二--5.经典进程的同步问题
    先申请资源信号量,再申请互斥信号量1.生产者-消费者问题   1.1利用记录型信号量......
  • 直接返回进程pid 的方法
    pidofcmd这种方法后面的cmd不管是绝对路径还是不在环境变量的二进制文件,都可以获取到pidlsof-ccmd-t使用lsof,cmd后面只能接已运行进程的二进制文件名示......
  • Delphi 多进程共享内存的简单封装单元
    该单元转自武稀松的博客稍作修改,使其支持Delphi7{共享内存封装.封装成了MemoryStream的形式.用法如下:varms:TShareMemStream;ms:=TShareMemStream.C......