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

网站制作流程详解(学做网站第一步)中国设计网 字体

网站制作流程详解(学做网站第一步),中国设计网 字体,大学电子系的建设网站的方案,做竞价推广的网站要求文章目录 一、操作系统简介二、进程三、线程四、线程的调用1、示例2、join方法3、setDaemon方法4、继承式调用#xff08;不推荐#xff09;5、其他方法 一、操作系统简介 ①操作系统是一个用来协调、管理和控制计算机硬件和软件资源的系统程序#xff0c;它位于硬件和应用… 文章目录 一、操作系统简介二、进程三、线程四、线程的调用1、示例2、join方法3、setDaemon方法4、继承式调用不推荐5、其他方法 一、操作系统简介 ①操作系统是一个用来协调、管理和控制计算机硬件和软件资源的系统程序它位于硬件和应用程序之间。它可以向上给程序员提供管理硬件的接口方便编写应用程序。 ②操作系统内核是一个管理和控制程序负责管理计算机所有物理资源其中包括文件系统、内存管理、设备管理和进程管理。 二、进程 ①进程是一个程序在一个数据集上的一次动态执行过程。 ②进程一般由程序、数据集、进程控制块三部分组成。 ③进程控制块是用来记录进程的外部特征描述进程的执行变化过程系统可以利用它来控制和管理进程。它是系统感知进程存在的唯一标识。 三、线程 ①进程是最小的资源单位。线程是最小执行单元。进程是线程的容器线程是进程的一个实体。 ②一个运行的程序至少有一个进程一个进程至少有一个线程。 ③进程在执行过程中拥有独立的内存单元而多个线程共享其内存。 ④线程在执行中与进程还是有区别的。每个独立的线程有一个程序运行的入口、顺序执行序列和程序出口。但是线程不能独立于进程存在。 ⑤一个线程可以创建和撤销另一个线程。 ⑥同一个进程中的多个线程之间可以并发执行。 四、线程的调用 1、示例 import threading import timedef Hi(num):print(hello %d\n %num,end)time.sleep(3)if __name__ __main__:t1 threading.Thread(targetHi, args(10,)) # 主线程创建了一个子线程对象t1.start() # 子线程t1运行函数H1t2 threading.Thread(targetHi, args(9,)) # 主线程创建了一个子线程对象t2.start() # 子线程t2运行函数H1print(ending,end)**上述代码分析**主线程按照顺序从上到下顺序执行主线程开设子线程后与子线程并发运行。所以上述代码会先输出   hello 10   hello 9   ending  然后等待三秒程序运行结束。 2、join方法 join方法在子进程完成运行之前这个子进程的父进程一直被阻塞。 import threading import timedef music():print(begin to listen %s\n %time.strftime(%X),end)time.sleep(3)print(stop to listen %s\n %time.strftime(%X),end)def game():print(begin to game %s\n %time.strftime(%X),end)time.sleep(6)print(stop to game %s\n %time.strftime(%X),end)if __name__ __main__:t1 threading.Thread(targetmusic) # 主线程创建了一个子线程对象t1.start() # 子线程t1运行函数H1t2 threading.Thread(targetgame) # 主线程创建了一个子线程对象t2.start() # 子线程t2运行函数H1t1.join() # 阻塞主线程主线程会等待t1线程执行完毕后再继续往下执行print(ending %s\n %time.strftime(%X),end) begin to listen 15:04:40 begin to game 15:04:40 stop to listen 15:04:43 ending 15:04:43 stop to game 15:04:46import threading import timedef music():print(begin to listen %s\n%time.strftime(%X),end)time.sleep(5)print(stop to listen %s\n % time.strftime(%X),end)def game():time.sleep(1)t3threading.Thread(targetmusic)t3.start()print(begin to play game %s\n%time.strftime(%X),end)time.sleep(3)print(stop to play game %s\n % time.strftime(%X),end)if __name__ __main__:t1 threading.Thread(targetmusic)t2 threading.Thread(targetgame)t1.start()t2.start()t1.join()t2.join()print(ending %s\n %time.strftime(%X),end) begin to listen 15:29:44 begin to listen 15:29:45 begin to play game 15:29:45 stop to play game 15:29:48 stop to listen 15:29:49 ending 15:29:49 stop to listen 15:29:50import threading import timedef music():print(begin to listen %s\n%time.strftime(%X),end)time.sleep(5)print(stop to listen %s\n % time.strftime(%X),end)def game():time.sleep(1)t3threading.Thread(targetmusic)t3.start()t3.join()print(begin to play game %s\n%time.strftime(%X),end)time.sleep(3)print(stop to play game %s\n % time.strftime(%X),end)if __name__ __main__:t1 threading.Thread(targetmusic)t2 threading.Thread(targetgame)t1.start()t2.start()t1.join()print(ending %s\n %time.strftime(%X),end) begin to listen 15:35:54 begin to listen 15:35:55 stop to listen 15:35:59 ending 15:35:59 stop to listen 15:36:00 begin to play game 15:36:00 stop to play game 15:36:033、setDaemon方法 setDaemon方法将线程声明为守护线程必须在start()方法调用之前设置将子线程设置为守护线程后主线程只要完成了子线程就会和主线程一起退出。该方法基本与join方法是相反的。 import threading from time import ctime,sleep import timedef ListenMusic(name):print(Beign listening to %s %s\n %(name,time.strftime(%X)), end)sleep(3)print(end listening %s\n %time.strftime(%X), end)def RecordBlog(title):print(Begin recording the %s %s\n %(title,time.strftime(%X)),end)sleep(5)print(end recording %s\n %time.strftime(%X), end)threads []t1 threading.Thread(targetListenMusic, args(水手,)) t2 threading.Thread(targetRecordBlog, args(python线程,))threads.append(t1) threads.append(t2)if __name__ __main__:t1.setDaemon(True)for t in threads:t.start()print(all over %s\n %time.strftime(%X), end) Beign listening to 水手 01:22:27 Begin recording the python线程 01:22:27 all over 01:22:27 end listening 01:22:30 end recording 01:22:32import threading from time import ctime,sleep import timedef ListenMusic(name):print(Beign listening to %s %s\n %(name,time.strftime(%X)), end)sleep(3)print(end listening %s\n %time.strftime(%X), end)def RecordBlog(title):print(Begin recording the %s %s\n %(title,time.strftime(%X)),end)sleep(5)print(end recording %s\n %time.strftime(%X), end)threads []t1 threading.Thread(targetListenMusic, args(水手,)) t2 threading.Thread(targetRecordBlog, args(python线程,))threads.append(t1) threads.append(t2)if __name__ __main__:t2.setDaemon(True)for t in threads:t.start()print(all over %s\n %time.strftime(%X), end) Beign listening to 水手 01:23:23 Begin recording the python线程 01:23:23 all over 01:23:23 end listening 01:23:264、继承式调用不推荐 import threading import timeclass MyThread(threading.Thread):def __init__(self, num):threading.Thread.__init__(self)self.num numdef run(self): # # run方法是重写的方法线程对象执行start方法要运行的该函数print(running on number:%s, %s\n % (self.num, time.strftime(%X)), end)time.sleep(3)print(结束:%s, %s\n % (self.num,time.strftime(%X)), end)if __name__ __main__:t1 MyThread(1)t2 MyThread(2)t1.start()t2.start()print(ending %s\n % time.strftime(%X), end) running on number:1, 22:36:46 running on number:2, 22:36:46 ending 22:36:46 结束:2, 22:36:49 结束:1, 22:36:495、其他方法 is_alive() 返回线程是否活动的 getName() 返回线程名 setName() 设置线程名 import threading import timedef test():time.sleep(2)t1 threading.Thread(targettest) t1.start() print(t1.is_alive()) # True print(t1.getName()) # Thread-1 t1.setName(T1) print(t1.getName()) # T1threading模块提供的一些方法 threading.currentThread() 返回当前的线程变量 import threading import timedef test():time.sleep(2)print(threading.currentThread()) # Thread(Thread-1, started 16028)t1 threading.Thread(targettest) t1.start() print(threading.currentThread()) # _MainThread(MainThread, started 14244)threading.enumerate() 返回一个包含正在运行的线程的列表 import threading import timedef test():time.sleep(2)t1 threading.Thread(targettest) t2 threading.Thread(targettest) t1.start() t2.start()print(threading.enumerate()) # [_MainThread(MainThread, started 26852), Thread(Thread-1, started 24396), Thread(Thread-2, started 15376)]threading.active_count() 返回正在运行的线程数量 import threading import timedef test():time.sleep(2)t1 threading.Thread(targettest) t2 threading.Thread(targettest) t1.start() t2.start()print(threading.active_count()) # 3
http://www.dnsts.com.cn/news/112295.html

相关文章:

  • 宿州网站开发公司怎么推广自己的qq群
  • 外贸网站自我建设与优化彩票网站开发 添加彩种教程
  • 水利网站建设管理汇报用discuz做行业网站
  • 大连建设工程信息网(官网)张店网站优化推广
  • 网站建设预付款比例网站不备案打不开
  • 卫龙的网站做的污污分wordpress md5解密
  • 无锡企业建站怎么做蛋糕
  • 个人域名备案后不能干什么烟台网站建设方案优化
  • 怎么使网站降权wordpress加百度商桥变慢
  • 淄博外贸网站建设公司深圳网站建设哪个好
  • 做知识内容的网站与app福州企业宣传片制作公司
  • 云南建投第十建设有限公司网站深圳市南山区住房和建设局
  • SEO网站公司做面食网站
  • 用织梦后台修改网站logo汕头app制作
  • 创网站需要什么企业注册阿里账号网站建设
  • 常州网站建设推广平台网页版微信二维码失效怎么恢复
  • 邗江区做网站为什么上传网站模板网站上没有文字和图片
  • 个人网站 平台长沙高端网站建设品牌
  • 南宁会制作网站的技术人员企业线上培训平台有哪些
  • 自己做网站主机怎样做互联网推广
  • 高端网站建设加盟视频格式转换网页版
  • 资兴做网站公司为知笔记写wordpress
  • 贵州住房和城乡建设厅网站php怎么网站开发
  • 企业微信公众号怎么开通seo整站优化哪家专业
  • 怎样分析网站做seo成免费crm软件排名
  • 免费网站建设培训免费网络推广100种方法
  • 某绿色园林企业网站源码湖南关键词优化品牌推荐
  • 正规的app网站开发hao123从上网官网
  • 阿里云服务器上做网站亚马逊aws在线观看
  • 大航母网站建设服务百度关键词排名突然没了