04 2020 档案

摘要:触发方式 1.水平触发 2.边缘触发 3.IO多路复用的优势:同时可以监听多个连接 边缘触发案例: 1 import socket,select 2 3 tcp_server = socket.socket() 4 tcp_server.bind(('127.0.0.1',8080)) 5 tcp_ 阅读全文
posted @ 2020-04-29 23:17 竹石2020 阅读(226) 评论(0) 推荐(0) 编辑
摘要:1 def f(): 2 print('ok') 3 a = yield 666 4 print(a) 5 print('ok2') 6 yield 7 8 9 gen = f() 10 a = gen.__next__() 11 print(a) 12 gen.send(555) 13 输出: 1 阅读全文
posted @ 2020-04-23 20:30 竹石2020 阅读(134) 评论(0) 推荐(0) 编辑
摘要:1 import os 2 import time 3 from multiprocessing import Pool,Process,Lock 4 5 def foo(i): 6 time.sleep(1) 7 # print('work is over') 8 print(i) 9 retur 阅读全文
posted @ 2020-04-23 13:41 竹石2020 阅读(168) 评论(0) 推荐(0) 编辑
摘要:1 import multiprocessing 2 import queue 3 def foo(num,num2,q): 4 num2 +=444 5 num+=1 6 num+=1 7 q.put((num,num2)) # 可以传数据 8 9 10 if __name__ == '__mai 阅读全文
posted @ 2020-04-23 00:51 竹石2020 阅读(132) 评论(0) 推荐(0) 编辑
摘要:第二种调用方式,重写run方法。 阅读全文
posted @ 2020-04-20 23:16 竹石2020 阅读(123) 评论(0) 推荐(0) 编辑
摘要:1 import queue 2 # q = queue.PriorityQueue() # 带优先级 3 q = queue.LifoQueue() # 后进先出 4 q.put(2) 5 q.put('hello') 6 q.put('asdfasd') 7 print(q.qsize()) # 阅读全文
posted @ 2020-04-20 18:04 竹石2020 阅读(125) 评论(0) 推荐(0) 编辑
摘要:fill 控件填充方式 padx - 设置水平方向的外边距 1 from tkinter import * 2 root = Tk() 3 w = Label(root, text="Red Sun", bg="red", fg="white") 4 w.pack(fill=X,padx=10) 5 阅读全文
posted @ 2020-04-19 22:15 竹石2020 阅读(159) 评论(0) 推荐(0) 编辑
摘要:首先导入模块 from tkinter inport * Label Frame Entry Text Button Listbox Scrollbar 以上是几个常用的控件,记住每个控件后面都必须加上pack()否则无法显示 1 from tkinter import * 2 3 root = T 阅读全文
posted @ 2020-04-19 00:49 竹石2020 阅读(246) 评论(0) 推荐(0) 编辑
摘要:event.wait() 就是阻塞。知道进程出现event.set() 就解除阻塞。接下来event.clear() 又可以解除event.set() 阅读全文
posted @ 2020-04-14 00:02 竹石2020 阅读(138) 评论(0) 推荐(0) 编辑
摘要:互相等待另外一个线程的释放 1 import threading 2 import time 3 4 5 class MyThread(threading.Thread): 6 def action(self): 7 lock1.acquire() 8 time.sleep(1) 9 print(s 阅读全文
posted @ 2020-04-13 13:10 竹石2020 阅读(221) 评论(0) 推荐(0) 编辑
摘要:1 import threading 2 import time 3 4 num = 100 5 def add(): 6 global num 7 s = num 8 time.sleep(0.02) 9 num = s - 1 10 11 l = list() 12 for i in range 阅读全文
posted @ 2020-04-13 00:10 竹石2020 阅读(163) 评论(0) 推荐(0) 编辑
摘要:函数内部可以使用全局变量但是不能直接修改全局变量。可以通过global后,进行修改。 1 num = 100 2 def add(): 3 s= num+1 4 print(s) 5 6 add() 7 输出: 8 101 9 10 进程完成,退出码 0 阅读全文
posted @ 2020-04-12 23:24 竹石2020 阅读(1460) 评论(0) 推荐(0) 编辑
摘要:并发:是指系统具有处理多个任务(动作)的能力。 并行:是指系统具有同时处理多个任务(动作)的能力。 并行是并发的一个子集 同步与异步 同步:等进程执行到一个IO(等待外部数据)的时候,你 等:同步异步:等进程执行到一个IO(等待外部数据)的时候,你 不等:一直等到数据接收成功,再回来处理 GIL锁 阅读全文
posted @ 2020-04-12 20:36 竹石2020 阅读(138) 评论(0) 推荐(0) 编辑
摘要:多线程 1 import threading 2 import time 3 4 5 def music(): 6 print('begin to listen music %s' % time.ctime()) 7 time.sleep(3) 8 print('stop to listen mus 阅读全文
posted @ 2020-04-11 23:39 竹石2020 阅读(121) 评论(0) 推荐(0) 编辑