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

公司网站建设费怎么入账怎么做网站?

公司网站建设费怎么入账,怎么做网站?,大芬网站建设,南京网站建设q润洽网络文章目录 一、操作系统简介二、进程三、线程四、线程的调用1、示例2、join方法3、setDaemon方法4、继承式调用(不推荐)5、其他方法 一、操作系统简介 ①操作系统是一个用来协调、管理和控制计算机硬件和软件资源的系统程序,它位于硬件和应用…

文章目录

  • 一、操作系统简介
  • 二、进程
  • 三、线程
  • 四、线程的调用
    • 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(target=Hi, args=(10,)) # 主线程创建了一个子线程对象t1.start()  # 子线程t1运行函数H1t2 = threading.Thread(target=Hi, 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(target=music) # 主线程创建了一个子线程对象t1.start()  # 子线程t1运行函数H1t2 = threading.Thread(target=game) # 主线程创建了一个子线程对象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:46
'''
import 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)t3=threading.Thread(target=music)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(target=music)t2 = threading.Thread(target=game)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:50
'''
import 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)t3=threading.Thread(target=music)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(target=music)t2 = threading.Thread(target=game)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:03
'''

3、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(target=ListenMusic, args=("水手",))
t2 = threading.Thread(target=RecordBlog, 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:32
'''
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(target=ListenMusic, args=("水手",))
t2 = threading.Thread(target=RecordBlog, 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:26
'''

4、继承式调用(不推荐)

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:49
'''

5、其他方法

is_alive() 返回线程是否活动的
getName() 返回线程名
setName() 设置线程名

import threading
import timedef test():time.sleep(2)t1 = threading.Thread(target=test)
t1.start()
print(t1.is_alive())    # True
print(t1.getName())     # Thread-1
t1.setName("T1")
print(t1.getName())     # T1

threading模块提供的一些方法
threading.currentThread() 返回当前的线程变量

import threading
import timedef test():time.sleep(2)print(threading.currentThread())    # <Thread(Thread-1, started 16028)>t1 = threading.Thread(target=test)
t1.start()
print(threading.currentThread())    # <_MainThread(MainThread, started 14244)>

threading.enumerate() 返回一个包含正在运行的线程的列表

import threading
import timedef test():time.sleep(2)t1 = threading.Thread(target=test)
t2 = threading.Thread(target=test)
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(target=test)
t2 = threading.Thread(target=test)
t1.start()
t2.start()print(threading.active_count()) # 3
http://www.hkea.cn/news/288430/

相关文章:

  • 做收集信息的网站河源市企业网站seo价格
  • 有赞短链接生成汕头seo推广
  • 团队做网站分工搜索引擎案例分析结论
  • 企业网站的建设过程做整站优化
  • 最简单的cms网站怎么做惠州抖音seo
  • 做网站销售怎么开发客户自己做一个网站
  • wordpress发布文章空白整站优化 mail
  • vs怎么做网站的首页seo知识培训
  • 网站建设的一般步骤包括知乎关键词排名工具
  • 网页设计怎样做一个网页seo软件哪个好
  • 销售性网站建设需求seo案例
  • 企业怎样选择域名做网站电脑突然多了windows优化大师
  • 网站一元空间有哪些呀品牌策划方案范文
  • 最便宜的网站建设企点
  • 网站代码加密深圳新闻今日最新
  • 不要钱做网站软件网站seo优化效果
  • 公司做网站提供产品加盟费互联网销售怎么做
  • 视频网站开发架构百度app最新版本
  • 网站上内容列表怎么做的网站模板中心
  • 上海利恩建设集团有限公司网站国内好用的搜索引擎
  • 网站模板论坛今日重大军事新闻
  • 昆山自适应网站建设电商平台的营销方式
  • 盘龙区网站建设外包高级搜索引擎技巧
  • 什么做的网站吗58百度搜索引擎
  • wordpress 企业站开发口碑营销的概念
  • 广州免费核酸检测点东莞seo项目优化方法
  • 学风建设网站版块设计个人网站
  • 网站底部连接怎么做福州seo推广
  • 生猪价格今日猪价行情关键词优化是什么工作
  • 网站建设公司下载搜索引擎查询