本地套接字-本地socket
#服务端--简单
import socket
import os
a='sock_file'
if os.path.exists(a):
os.remove(a) s=socket.socket(socket.AF_UNIX,socket.SOCK_STREAM)
s.bind(a)
s.listen(3)
while True:
c,addr = s.accept()
while True:
date=c.recv(1024)
if not date:
c.close()
break
else:
c.send(date)
#客户端--简单
import socket,time
a='sock_file'
s = socket.socket(socket.AF_UNIX,socket.SOCK_STREAM)
s.connect(a)
while True:
msg='你好1'.encode()
s.send(msg)
date=s.recv(1024)
print(date.decode())
time.sleep(2)
本地套接字循环发送信息示例应用场景2
#服务端
import socket,time,threading
import os,select
a='sock_file'
if os.path.exists(a):
os.remove(a) s=socket.socket(socket.AF_UNIX,socket.SOCK_STREAM)
s.setblocking(False)
s.bind(a)
s.listen()
rlist=[s,]
wlist=[]
erlist=[]
def accept_():
while True:
rs,ws,er=select.select(rlist,wlist,erlist)
print(ws)
time.sleep(2)
print(1)
for i in rs:
if i is s:
con,add=s.accept()
rlist.append(con) for i in erlist:
print(i) def send_():
while True:
time.sleep(2)
for i in rlist:
if i is s:
pass
else:
date='你好'.encode()
try:
i.send(date)
except:
i.close()
rlist.remove(i)
t1=threading.Thread(target=accept_,)
t1.start()
t2=threading.Thread(target=send_,)
t2.start()
t1.join()
t2.join()
#客户端---
import socket,time
a='sock_file'
s = socket.socket(socket.AF_UNIX,socket.SOCK_STREAM)
s.connect(a)
while True:
# msg='你好2'.encode()
# s.send(msg)
date=s.recv(1024)
print(date.decode())
# time.sleep(2)
本地套接字-本地socket的更多相关文章
- 02_套接字编程(socket抽象层)
1.套接字概述 1.套接概述: 套接是进行网络通信的一种手段(socket) 2.套接字分类: 流式套接字(SOCK_STREAM): 传输层基于tcp协议进行通信 数 ...
- socket IPC(本地套接字 domain)
1.简介 socket API原本是为网络通讯设计的,但后来在socket的框架上发展出一种IPC机制,就是UNIX Domain Socket.虽然网络socket也可用于同一台主机的进程间通讯(通 ...
- 【转】PHP实现系统编程(四)--- 本地套接字(Unix Domain Socket)
原文:http://blog.csdn.net/zhang197093/article/details/78143687?locationNum=6&fps=1 --------------- ...
- linux 本地套接字通信
本地套接字通信 利用本地套接字,也可以进程间通信. 本地套接字和有名管道一样都利用伪文件 管道的文件类型是p 本地套接字的文件类型是s. 当调用bind函数后,就会生成本地套接字对应的伪装文件 srw ...
- iptables开启后造成本地套接字阻塞的问题
前段时间,我使用iptables实现了针对IP地址与MAC地址的白名单功能,即将INPUT链的默认规则设为DROP: iptables -P INPUT DROP 这样就能拒绝一切外来报文.随后只需要 ...
- WCF服务调用超时错误:套接字连接已中止。这可能是由于处理消息时出错或远程主机超过接收超时或者潜在的网络资源问题导致的。本地套接字超时是“00:05:30”(已解决)
问题: 线上正式环境调用WCF服务正常,但是每次使用本地测试环境调用WCF服务时长就是出现:套接字连接已中止.这可能是由于处理消息时出错或远程主机超过接收超时或者潜在的网络资源问题导致的.本地套接字超 ...
- 八、套接字(Socket)
demo 一个连接由它的两个端点标识,这样的端点称为套接 套接字是支持TCP/IP协议的网络通信的基本操作单元. 可以将套接字看作不同主机间的进程进行双向通信的端点. 上图连接1的一对套接字为: (1 ...
- 《Python》网络编程之客户端/服务端框架、套接字(socket)初使用
一.软件开发的机构 我们了解的涉及到两个程序之间通讯的应用大致可以分为两种: 第一种是应用类:QQ.微信.网盘等这一类是属于需要安装的桌面应用 第二种是web类:比如百度.知乎.博客园等使用浏览器访问 ...
- 使用TCP/IP的套接字(Socket)进行通信
http://www.cnblogs.com/mengdd/archive/2013/03/10/2952616.html 使用TCP/IP的套接字(Socket)进行通信 套接字Socket的引入 ...
随机推荐
- jemter 90%line的解释
假如: 有10个数: 1.2.3.4.5.6.7.8.9.10 按由大到小将其排列. 求它的第90%百分位,也就是第9个数刚好是9 ,那么他的90%Line 就是9 . 另一组数: 2.2.1. ...
- 利用redis 分布式锁 解决集群环境下多次定时任务执行
定时任务: @Scheduled(cron= "0 39 3 * * *") public void getAllUnSignData(){ //检查任务锁,若其它节点的相同定时任 ...
- JAVA 基础编程练习题49 【程序 49 子串出现的个数】
49 [程序 49 子串出现的个数] 题目:计算字符串中子串出现的次数 package cskaoyan; public class cskaoyan49 { public static void m ...
- Oracle查询显示CLOB的内容
select dbms_lob.substr(note) from table
- [C++]Yellow Cards - GYM - 102348A(Practice *) - CodeForces
1 Problem Description Problem The final match of the Berland Football Cup has been held recently. Th ...
- Entity Framework链接数据库设置
本人不才,学习EntityFramwork同时做个记录供大家参考.不多说,直接上步骤 1.在WebConfig中添加如下代码段 <connectionStrings> <add na ...
- tensorflow 提示没有models库
在tensorflow文件夹里进行鼠标右键 点击 选择 Git Bash here(注意:这里的tensorflow路径可以这样来查看,在cmd命令行激活tensorflow环境activate te ...
- Grep---linux系统三剑客(一)
grep .sed.awk被称为linux中的"三剑客". grep 更适合单纯的查找或匹配文本 sed 更适合编辑匹配到的文本 awk 更适合格式化文本,对文本进行较复杂格式 ...
- flask数据库连接池DBUtils
数据库连接池 为啥要使用数据库连接池 频繁的连接和断开数据库,消耗大,效率低 DBUtils可以创建多个线程连接数据库,且一直保持连接,不会断开 执行数据库操作时,由数据池分配线程,当数据池空时,可选 ...
- Shell中特殊字符的含义
$0 这个程式的执行名字 $n 这个程式的第n个参数值,n=1..9 $* 这个程式的所有参数,此选项参数可超过9个. $# 这个程式的参数个数 $$ 这个程式的PID(脚本运行的当前进程ID号) $ ...