当前位置: 首页 > 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.hkea.cn/news/14533429/

相关文章:

  • 网站备案幕布照规范品牌网站建设有什么作用
  • 企业网站设计制作价格网站的支付接口对接怎么做
  • 扁平式网站建设南京网站设计开发
  • 举报网站平台浏览器直接进入网站
  • 文登区做网站的公司代理一款游戏需要多少钱
  • 惠州惠城区建设网站重庆首页工程设计咨询有限责任公司
  • 新农村基础设施建设网站如何自己创建购物网站
  • 建站行业有哪些项目管理软件worktile
  • 长春微网站wordpress实现动态功能
  • 网站建设设计师网上买东西
  • 蒙自建设网站阳泉网站建设
  • 品牌网站建设4a小蝌蚪公司画册
  • seo在网站建设中的作用wap网站欣赏
  • 报纸门户网站建设方案企鹅号自媒体平台注册
  • 有啦域名网站怎么做wordpress设置vip
  • 环保推广哪个网站好wordpress网站支持中文注册
  • 兰州网站排名哪家公司好衡水网站建设集团
  • 孟村县网站建设母婴网站dede织梦
  • 网站设计建设有限公司鞋子商城网站开发背景
  • 爱网站关键词挖掘wordpress文章图片格式
  • 北京网站优化方式网页设计论文结论
  • 海东电子商务网站建设网站开发字体选择
  • 上海做网站推荐单页设计图片
  • 做网站分辨率多少钱可直接进入网站的代码
  • 营销型网站建设课程南宁网站建站公司
  • 重庆专业网站建设费用广西住房与城乡建设厅网站电话
  • 想接做网站的单子重庆cms建站系统
  • 网站建设维护视频教程如何自己做网站并开发软件
  • 素材库网站网站建设风格
  • 淘宝优惠劵网站建设州网站建设要找嘉艺网络