• cdp协议通信并发编程基础之进程



    一 、 基于UDP的套接字

    udp是无链接的所以先启动哪一段都不会报错
    udp服务端
    import socket

    server=socket.socket(socket.AF_INET,socket.SOCK_DGRAM) # 数据报协议
    server.bind(('127.0.0.1',8080))

    while True:
    client_data,client_addr=server.recvfrom(1024)
    msg=input('回复%s:%s>>>:' %(client_addr[0],client_addr[1]))
    server.sendto(msg.encode('utf-8'),client_addr)


    udp 客户端
    import socket

    client=socket.socket(socket.AF_INET,socket.SOCK_DGRAM) # 数据报协议

    while True:
    msg=input('>>>: ').strip()
    client.sendto(msg.encode('utf-8'),('127.0.0.1',8080))
    res,server_addr=client.recvfrom(1024)
    print(res.decode('utf-8'))
    注意:udp是数据报形式发送数据所以不会粘包,但其传输信息并不可靠。所以udp协议传输数据为了保证数据可靠性最大传输
    为512个字节
    二、并发基础

    进程:
    1、什么是程序?什么是进程?
    程序说白了就是一堆文件
    进程就是一个正在执行的过程/程序

    所以说进程是一个抽象的概念
    这个概念起源操作系统

    2、什么是操作系统
    定义:
    操作系统是位于计算机硬件与应用软件之间
    用于协调、管理、控制计算机硬件与软件的资源的
    一种控制程序

    3、操作系统的两大作用:
    1、把复杂丑陋的硬件操作都封装成美丽的接口,提供给应用程序使用
    2、把进程对硬件的竞争变的有序


    4、多道技术
    多道的产生背景是想要在单个cpu的情况下实现多个进程并发执行的效果


    1、空间上的复用 (多道程序复用内存的空间)
    2、时间上的复用 (多道程序复用CPU时间)
    cpu遇到IO操作要切换(提升效率)
    一个进程占用cpu时间过长也切(降低效率)

    进程与进程之间的内存空间是互相隔离的
  • 相关阅读:
    RandomAccessFile类
    IO_ObjectOutputStream(对象的序列化)
    IO流_文件切割与合并(带配置信息)
    IO流_文件切割与合并
    IO流_SequenceInputStream(序列流)
    10-stack
    9-queue
    16-两种方法全排列
    8-全排列next_permutation
    15-Call to your teacher(有向图的连通判断)
  • 原文地址:https://www.cnblogs.com/zhaodafa/p/8919892.html
Copyright © 2020-2023  润新知