【MK】Python全栈 阶段一:习题汇总 十:多线程编程

【MK】Python全栈 阶段一:习题汇总 三: 流程控制 版权声明:本文为博主原创文章,未经博主允许不得转载。 文章目录一、单选题1.if 语句二、多选题三、编程题任务1: 一、单选题 1.if 语句 1.运行下图中的代码,打印结果正确的选项是( B ) A .开心,哈哈 B .无 C .哈哈,开心 D .哈哈 2.下 A . B . C . D . 二、多选题 1.已 A . B . C . D . 三、编程题 任务1: 1、要求: 1、 版权声明:本文为博主原创文章,未经博主允许不得转载。 ... 阅读详情

版权声明:本文为博主原创文章,未经博主允许不得转载。



一、单选题

1.下列关于 线程 与 多线程 的说法不正确的是( )

  • A .线程(Thread)也叫轻量级进程,是操作系统进行运算调度的最小单位
  • B .一个线程可以创建和撤消另一个线程
  • C .线程之间不能共享内存
  • D .使用多线程来实现多任务并发执行比使用多进程的效率高 【√】

2.下列关于进程间通信的方法队列不正确的选项是( A )

  • A .队列主要有Put方法和Delete方法 【put()、get()】
  • B .队列用于多个进程之间实现通信
  • C .Put方法主要是以插入数据到队列中
  • D .Get方法是从队列读取并且删除一个元素

二、多选题

1.下列关于使用线程池的原因正确的是()(选两项)

  • A .程序运行过程中线程数量越多越好
  • B .对于任务数量不断增加的程序,固定线程数量的线程池是有必要的
  • C .对于任务数量不断增加的程序,每有一个任务就生成一个线程,最终会导致量的失控
  • D .线程数量越多越好而且线程运行不占用资源

三、练习题

3.1 进程

一、按顺序执行:不同函数执行的进程号:进程号相同,代表在同一个进程中执行的

import time
import os

def  work_a():
    for i in range(10):
        print(i, 'a', os.getpid())     # 查看程序执行的进程号
        time.sleep(1)

def work_b():
    for i in range(10):
        print(i, 'b', os.getpid())
        time.sleep(1)

if __name__ == '__main__':
    start = time.time()
    work_a()
    work_b()
    print(time.time() - start)        # 用时:20秒
    print('parent pid is %s' % os.getpid())

二、创建进程:不同函数同时执行

import time
import os
import multiprocessing    # 进程模块

def  work_a():
    for i in range(10):
        print(i, 'a', os.getpid())     # 查看程序执行的进程号
        time.sleep(1)

def work_b():
    for i in range(10):
        print(i, 'b', os.getpid())
        time.sleep(1)

if __name__ == '__main__':
    start = time.time()
    # work_a 函数脱离了主进程,生成自己的单独子进程去执行,所以work_a和work_b之间执行相互不影响,所以用时缩短
    a_p = multiprocessing.Process(target=work_a)   # work_a:没有参数,所以args不用传了
    a_p.start()
    work_b()
    print(time.time() - start)              # 用时:10秒
    print('parent pid is %s' % os.getpid())

三、子进程与主进程互不影响

import time
import os
import multiprocessing    # 进程模块

def  work_a():
    for i in range(10):
        print(i, 'a', os.getpid())     # 查看程序执行的进程号
        time.sleep(1)

def work_b():
    for i in range(10):
        print(i, 'b', os.getpid())
        time.sleep(1)

if __name__ == '__main__':
    start = time.time()    # 主进程:代码1
    # 子进程1:work_a 函数脱离了主进程,生成自己的单独子进程去执行,所以work_a和work_b之间执行相互不影响,所以用时缩短
    a_p = multiprocessing.Process(target=work_a)   # work_a:没有参数,所以args不用传了
    # 子进程1执行
    a_p.start()
    # 子进程2:
    b_p = multiprocessing.Process(target=work_b)
    # 子进程2执行
    b_p.start()
    # 主进程:代码2
    print('用时:',time.time() - start)              # 用时:0.028秒
    # 主进程:代码3
    print('parent pid is %s' % os.getpid())

四、

import time
import os
import multiprocessing    # 进程模块

def  work_a():
    for i in range(10):
        print(i, 'a', os.getpid())     # 查看程序执行的进程号
        time.sleep(1)

def work_b():
    for i in range(10):
        print(i, 'b', os.getpid())
        time.sleep(1)

if __name__ == '__main__':
    start = time.time()    # 主进程:代码1
    
    # 子进程1:work_a 函数脱离了主进程,生成自己的单独子进程去执行,所以work_a和work_b之间执行相互不影响,所以用时缩短
    a_p = multiprocessing.Process(target=work_a)   # work_a:没有参数,所以args不用传了

    # 子进程2:
    b_p = multiprocessing.Process(target=work_b)

    # 多进程的执行
    for p in (a_p, b_p):
        p.start()

    # 主进程:代码2
    print('用时:',time.time() - start)              # 用时:0.028秒
    # 主进程:代码3
    print('parent pid is %s' % os.getpid())

五、先执行子进程,再执行主进程:join() 函数

import time
import os
import multiprocessing    # 进程模块

def  work_a(
【MK】Python全栈 阶段一:习题汇总 十一:正则表达式 版权声明:本文为博主原创文章,未经博主允许不得转载。 文章目录一、单选题二、多选题三、练习题四、编程题 一、单选题 二、多选题 1.X A . B . C . D . 三、练习题 四、编程题 版权声明:本文为博主原创文章,未经博主允许不得转载。 ... 阅读详情

相关推荐

【MK】Python全栈 阶段一:习题汇总 八:文件操作

版权声明:本文为博主原创文章,未经博主允许不得转载。 文章目录一、单选题二、多选题三、练习题四、编程题 一、单选题 二、多选题 1.X A . B . C . D . 三、练习题 四、编程题 版权声明:本文为博主原创文章,未经博主允许不得转载。 ...

InitialHeart2021的博客 231

【MK】Python全栈 阶段一:习题汇总 五:面向对象编程

版权声明:本文为博主原创文章,未经博主允许不得转载。 文章目录一、单选题二、多选题三、编程题 一、单选题 1.下列选项中关于 self 的说法正确的是( D ) A .self 参数跟函数的参数一样,调用时需要传值 B .类中的 self 只能在带有self参数的函数中使用 C .定义类属性变量时需要用self 【??】 D .self是类函数中必传的参数,且必须放在第一位 二、多选题 1.X A . B . C . D . 三、编程题 版权声明:本文为博主原创文章,未经博主允许不得

InitialHeart2021的博客 250

【MK】Python全栈 阶段一:习题汇总 四:函数的定义与调用

版权声明:本文为博主原创文章,未经博主允许不得转载。 文章目录一、单选题二、多选题三、编程题任务1: 一、单选题 1.下 A . B . C . D . 二、多选题 1.已 A . B . C . D . 三、编程题 任务1: 版权声明:本文为博主原创文章,未经博主允许不得转载。 ...

InitialHeart2021的博客 271

【MK】Python全栈 阶段二:习题汇总 三:MySQL数据表的基本操作:高级查询

版权声明:本文为博主原创文章,未经博主允许不得转载。 文章目录一、单选题1.1 MySQL的综合应用1.2 MySQL与Python交互二、多选题三、练习题四、编程题 一、单选题 1.1 MySQL的综合应用 1.下列 A . B . C . D . 1.2 MySQL与Python交互 二、多选题 三、练习题 四、编程题 版权声明:本文为博主原创文章,未经博主允许不得转载。 ...

InitialHeart2021的博客 250

【MK】Python全栈 阶段二:习题汇总 一:MySQL数据表的基本操作:表、字段、索引的增删改查

版权声明:本文为博主原创文章,未经博主允许不得转载。 文章目录一、单选题二、多选题三、练习题四、编程题 一、单选题 1.下列 A . B . C . D . 二、多选题 三、练习题 四、编程题 版权声明:本文为博主原创文章,未经博主允许不得转载。 ...

InitialHeart2021的博客 209

【MK】Python全栈 阶段一:习题汇总 一: 数据类型

版权声明:本文为博主原创文章,未经博主允许不得转载。 文章目录一、单选题二、多选题三、编程题任务任务任务 一、单选题 1.下列语句中能打印出Hello world的选项是() A Print(Hello world) B print(hello world) C print(‘hello world’) D print(‘Hello world’) 2.有一个test.py文件,要想在Pycharm的终端里执行该文件,则下列命令正确的是() A python test B pycharm t

InitialHeart2021的博客 279

【MK】Python全栈 阶段一:习题汇总 十二:综合项目实战开发:抽奖系统

版权声明:本文为博主原创文章,未经博主允许不得转载。 文章目录一、单选题二、多选题三、练习题四、编程题 一、单选题 二、多选题 1.X A . B . C . D . 三、练习题 四、编程题 版权声明:本文为博主原创文章,未经博主允许不得转载。 ...

InitialHeart2021的博客 203

手把手教你用NetToPLCsim搭建西门子S7-1200仿真环境(附避坑指南)

本文详细指导如何利用NetToPLCsim与PLCSIM搭建西门子S7-1200仿真环境,实现无硬件条件下的PLC程序测试与上位机通信开发。内容涵盖软件选型、环境部署、关键参数配置及通信测试,并重点提供了连接失败、数据读写错误等常见问题的深度避坑指南,帮助工程师高效构建可靠的虚拟调试工作流。

a3b4c5的博客 614

YOLO-FastestV2从零部署到移动端推理实战手册

本文详细介绍了YOLO-FastestV2从零开始的完整部署流程,涵盖环境搭建、模型训练、格式转换及移动端部署。通过实战步骤,指导开发者将这一轻量级目标检测模型成功部署到Android设备,实现实时推理。文章重点解析了PyTorch到NCNN的模型转换与优化,助力移动端AI应用开发。

l1k9j8h7g6的博客 668

【液晶专题】从外挂到In-Cell/ On-Cell/ OGS再也不会傻傻分不清楚了

触控技术经历了从外挂式到内嵌式的革新,主要方案包括外挂式(Out-Cell)、OGS、On-Cell和In-Cell。

一点硬件 1252

在国产麒麟系统上,用Postfix和Dovecot手搓一个内部邮件服务器(附Foxmail配置)

本文详细介绍了在国产麒麟系统上使用Postfix和Dovecot搭建内部邮件服务器的完整流程,包括系统准备、核心配置、安全加固及客户端适配。针对国产环境的特殊需求,提供了依赖包适配、配置差异和Foxmail客户端配置的实用解决方案,助力企业实现高效内部协作。

weixin_33722405的博客 370

YOLOv13改进策略【多YAML融合】| HWD + DSC3k2_PConv + Detect_MBConv

本文记录的是利用HWD + DSC3k2_PConv + Detect_MBConv改进YOLOv13,分别涉及骨干、颈部和检测头部分的改进。一方面按照此配置,其工作量及创新程度能够满足论文发表的需求,另一方面是一些难以融合多个YAML的举例,以帮助大家理解如何将多个YAML整合到一个YAML中。小波下采样:一个简单但有效的语义分割下采样模块。块由两个主要块组成:无损特征编码块和特征表示学习块。HWD模块与其他下采样模块对比:保留信息能力:传统的下采样方法(如最大池化、平均池化和步幅卷积等)会导致信息丢失,

Limiiiing的博客 496

高速信号设计中的关键测试项目与测试仪器详解

高速信号设计是一个多维度协同优化的系统工程。时域分析如同外科手术刀般精准定位物理缺陷,频域分析提供传输通道的频谱指纹,信号质量评估量化系统鲁棒性,接收端容限测试验证极端工况下的可靠性,协议一致性确保生态互操作性,而电源完整性则直指诸多信号问题的根源。

u014344410的博客 217

Simulink开发项1000例实战专栏--实例148:构建一个完整的电动汽车电池SOH评估仿真模型,包括电池建模模块、数据采集模块、SOH估算算法模块以及性能评估模块

电动汽车的动力电池是其核心部件,而电池的健康状态(State of Health, SOH)直接影响车辆的续航能力和使用寿命。SOH通常定义为当前电池容量与初始容量的比值,用百分比表示。通过基于MATLAB/Simulink平台的SOH评估仿真,可以实时监测电池的退化情况,并为电池管理系统(BMS)提供决策依据。本项目旨在构建一个完整的电动汽车电池SOH评估仿真模型,包括电池建模模块、数据采集模块、SOH估算算法模块以及性能评估模块,并通过仿真验证SOH评估的准确性。

xiaoheshang_123的博客 342

计算机组成原理(第三版)唐朔飞-第七章指令系统-课后习题

机器字长是指CPU一次能处理数据的位数通常与CPU的寄存器位数有关。指令字长是指机器指令中二进制代码的总位数。存储字长是指存储单元中存放二进制代码的总位数。三者可以相等也可以不等视不同机器而定。答:OP(4位)A1(6位)A_1(6位)A1​(6位)A2(6位)A_2(6位)A2​(6位)设二地址指令格式为该指令系统的基本格式,4位操作码共有16种编码,其中13种用来定义二地址指令,还剩3种可用作扩展标志。一地址指令条数=3∗26=192。

weixin_45735391的博客 7万+

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

上一篇: 【MK】Python全栈 阶段一:习题汇总 八:文件操作
下一篇: 【MK】Python全栈 阶段一:习题汇总 十一:正则表达式
InitialHeart2021
博客等级 码龄5年 49粉丝 182原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

InitialHeart2021

你的鼓励是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值