当前位置: 首页 > news >正文

做网站的基本功能建站公司最新报价

做网站的基本功能,建站公司最新报价,织梦手机网站有广告,wordpress表格线【1】线程的概念 1.线程--进程会得到一个内存地址#xff0c;进程是资源分配的基本单位线程才是真正进程里处理数据与逻辑的东西进程---》被分配一定的资源线程---》利用进程资源处理数据与逻辑 【2】进程和线程关系#xff1a; 进程与进程之间是竞争关系#xff0c;竞…【1】线程的概念 1.线程--进程会得到一个内存地址进程是资源分配的基本单位线程才是真正进程里处理数据与逻辑的东西进程---》被分配一定的资源线程---》利用进程资源处理数据与逻辑 【2】进程和线程关系 进程与进程之间是竞争关系竞争内存空间和资源线程和线程之间协作关系共同完成某个任务 【3】进程和线程开销问题 进程 线程 原因一个进程相当于一个工作车间一个线程只是一个进程里的流水线线程只是在进程已经申请有的资源上进行的处理 【4】进程和线程的区别 1. 线程共享创建它的进程的地址空间 进程具有自己的地址空间。 2.线程可以直接访问其进程的数据段 进程具有其父进程数据段的副本。 3.线程可以直接与所在进程中的其他线程通信 进程必须使用进程间通信与同级进程进行通信。 4.新线程很容易创建 新进程需要复制父进程。 5.线程可以对同一进程的线程行使相当大的控制权。 进程只能控制子进程。# 创建线程----多线程和多进程只有在阻塞的时候才能到别的地方去运行【5】创建线程的方式 方式一 引入模块直接创建 from threading import Thread def work():... if __name__ __main__:t1Thread(targetwork)t1.start() 方式二 继承Thread类重写run方法 继承了之后我的 New_Thread类他实例化的对象就是一个线程 from threading import Thread class New_Thread(Thread): ​def __init__(self):super().__init__()def run(self):print(我是线程) if __name__ __main__:tNew_Thread()t.start() 【6】多线程共享数据多进程之间的数据是隔离开的 通过例子不难发现线程中的数据进行修改在其他线程中会变 但是进程中的数据却不会 from multiprocessing import Process from threading import Thread num10 def work():# 由于在局部修改全局的变量要对局部的该变量进行等级提升global numprint(f改变前num{num})num1print(f改变后num{num}) def main():for i in range(4):# threadThread(targetwork)# thread.start()# thread.join()processProcess(targetwork)process.start()process.join()print(f当前num{num}) if __name__ __main__:main() 【7】线程的查看的pid与ppid与进程的区别 线程的pid是他所属的进程因为都是由同一个进程开的线程所以他的pid是相同的,ppid相同由于是一个主进程开的进程里的线程 每个进程有每个进程的不一样的pid,但又相同的ppid ​ def work(name):print(f当前{name}的pid{os.getpid()})print(f当前{name}的ppid{os.getppid()}) def main():for i in range(2):# thThread(targetwork,args(f线程{i1},))# th.start()# th.join()当前线程1的pid13532当前线程1的ppid2792当前线程2的pid13532当前线程2的ppid2792当前主进程的pid13532pProcess(targetwork,args(f进程{i1},))p.start()p.join()当前进程1的pid10412当前进程1的ppid11060当前进程2的pid16796当前进程2的ppid11060当前主进程的pid11060print(f当前主进程的pid{os.getpid()}) if __name__ __main__:main() 【8】线程服务器并发 服务端 import socket from socket import SOL_SOCKET,SO_REUSEADDR from threading import Thread ​ ​ class Server():def __init__(self):self.serversocket.socket()self.server.setsockopt(SOL_SOCKET,SO_REUSEADDR,1)self.server.bind((127.0.0.1,8080))self.server.listen(5)staticmethoddef work(sock):while True:datasock.recv(1024)if data.decode():breakprint(data.decode())sock.send(f你好{data.decode()}.encode())def main(self):while True:sock,addrself.server.accept()tThread(targetself.work,args(sock,))t.start()#t.join() if __name__ __main__:tServer()t.main() 客户端 import socket clientsocket.socket() client.connect((127.0.0.1,8080)) while True:msginput(请输入》》)client.send(msg.encode())dataclient.recv(1024)print(data.decode()) 【9】守护线程 主线程结束运行后不会马上结束而是等待其他非守护子线程结束之后才会结束 守护子线程会跟着主线程一起死 例子 from threading import Thread from multiprocessing import Process import timedef foo():print(f this is foo begin)time.sleep(1)print(f this is foo end)def func():print(f this is func begin)time.sleep(3)print(f this is func end)def main():t1 Thread(targetfoo)t2 Thread(targetfunc)t1.daemon Truet1.start()t2.start()print(f this is main)if __name__ __main__:main()# this is foo begin# this is func begin# this is main# this is foo end# this is func end 【十】多进程和多线程之间比较 多进程--》适合计算密集型操作 多线程--》适合IO密集型操作
http://www.dnsts.com.cn/news/30949.html

相关文章:

  • wordpress自定义栏目模板谷歌搜索引擎优化
  • 北京网站制作官网云主机服务器租用
  • 网站建设的后期服务要包括什么软件商会联盟网站建设方案
  • 2017网站设计趋势做一手房用什么网站
  • 我的网站是面向全国的选哪个公司的服务器比较好开原网站制作
  • 一个网站通常包含多个网页建设项目环保备案登记网站
  • 时尚网站设计案例教学网站开发背景
  • 沈阳h5模板建站wordpress付费附件下载
  • 网站开发注册个体工商wordpress free cdn
  • 那个网站上有打码的任务做网站规划书市场分析
  • 做网站需要服务器办公宽带多少钱一年
  • 如何写一份企业网站建设方案银川网站建设公司名单
  • 株洲网站建设服务公司做网站程序的都不关注seo
  • 网站备案信息传怎么做推广和宣传
  • 中建二局官网梅州百度seo公司
  • 做淘宝客网站需要备案吗网站域名dns
  • 英文网站怎么切换中文网页qq注册新账号免费
  • 网站建设工作情况报告池州市网站建设优化
  • 网站开发课设心得青岛官网seo技术厂家
  • 网站营销的重要价值搜索引擎大全入口
  • 网站建站如何做seo开封到濮阳
  • 搭建一个网站教程创业网站建设
  • 网站增加一体化建设功能的好处php网站开发需要学什么软件
  • 网站如何验证登陆状态瑞诺国际公司团队介绍
  • 长沙网站建设规划局 网站建设方案
  • 小程序跳转到网站wordpress 表格 插件
  • 广东省建设厅网站可以查单位网站建设框架
  • 哪些网站做科技专题太湖度假区建设局网站
  • 网站建设技术发展趋势预测jsp电子商务网站建设源码
  • 山东省建设项目备案证明网站东营网络科技有限公司