摘要: 在 Linux 下安装 mysqlclient,如果是选择直接安装的话,一般会报如下错误, 解答方案, 一般来说安装一个依赖即可 sudo apt install libmysqlclient-dev 安装完依赖之后,再次执行即可成功安装 pip install mysqlclient -i htt 阅读全文
posted @ 2018-12-05 22:00 AustinJoe 阅读(283) 评论(0) 推荐(0) 编辑
摘要: 通常在python中设计并发编程都是使用多进程和多线程来实现的,由于GIL锁的的存在对于CPU密集型的任务通常使用多进程来实现,而对于IO密集型任务通常采用多线程来实现,让线程在调度的时候让出GIL,从而在表面上实现并发。其实对于IO密集型任务我们还可以利用协程来实现。 协程 协程,被称为微线程。协 阅读全文
posted @ 2018-09-23 15:42 AustinJoe 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 线程池 预先创建好一个数量较为优化的线程组,在需要的时候立刻能够使用,就形成了线程池。就像生产者消费者模型那样,主线程就像生产者一样,他会不断地的向池中提交任务,而并不关心池的内部是如何执行的以及哪一个子线程来执行任务。线程池中的线程就相当于消费者,他会不断地接受任务并将任务分派给空闲的线程去执行。 阅读全文
posted @ 2018-09-22 22:49 AustinJoe 阅读(652) 评论(0) 推荐(0) 编辑
摘要: 多进程之间通信的限制 看一个例子: 可以看到,声明为global的data也没有发生变化,输出结果仍然是666,这正是多进程之间通信的限制,各个进程之间是相互独立的,互不干扰的内存空间。因此如果想要空想数据就必须开辟一段共享的内存空间。就要用到Manger对象。 Manger对象 我们常用的Mang 阅读全文
posted @ 2018-09-21 12:28 AustinJoe 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 进程pid与线程ident 进程: 线程: 进程名和线程名 当前进程和当前线程 等待进程或线程结束 进程和线程的生存状态 中止进程 注意:线程不能被终止,只能等待其运行结束! 守护模式 下面的程序中,当主进程运行结束后设置成守护模式的子进程会在2s后被“杀死”,而不是等待其执行结束,就像很多应用一样 阅读全文
posted @ 2018-09-19 11:44 AustinJoe 阅读(409) 评论(0) 推荐(0) 编辑
摘要: 在前一篇文章中,我们实现了通过非阻塞套接字的并发服务,但是这种实现方式是有很多问题的。 一、CPU资源的极大浪费; 二、如果没有连接那么,accept()和recv()都在做无用功; 三、对BlockIOError的处理也是在做无用功。 针对以上问题,现在我们使用IO多路复用的技术来实现并发的服务。 阅读全文
posted @ 2018-09-17 12:57 AustinJoe 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 在我们创建普y通的Socket时知道,accept()和recv()都是会阻塞的,也就是意味着程序会在运行到这里时终止,而且一次只能连接一个客户端,必须等这个客户端处理结束才能继续连接,那么如何让程序不终止并且可以连接多个客户端呢? 通过 setblocking(False) 语句让程序不阻塞,但是 阅读全文
posted @ 2018-09-16 20:22 AustinJoe 阅读(155) 评论(0) 推荐(0) 编辑
摘要: socket是基于C/S架构的,也就是说进行socket网络编程,通常需要编写两个py文件,一个服务端,一个客户端。 首先,导入Python中的socket模块: import socket 其通信逻辑如下图所示: 这张图片是整个socket编程的基础,必须牢牢记住。 通过导入模块import so 阅读全文
posted @ 2018-09-15 19:45 AustinJoe 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 当今的世界是网络的世界,网络的发展成就了今天丰富的网络生活。我们的生活学习如今都离不开网络。 那么,我们每天如此多的网络沟通是怎么实现的呢?那么就要介绍以下TCP/IP协议。 TCP/IP协议是Transmission Control Protocol/Internet Protocol的简写,即传 阅读全文
posted @ 2018-09-15 15:41 AustinJoe 阅读(442) 评论(0) 推荐(0) 编辑
摘要: Base64是一种用64个字符来表示任意二进制数据的方法。(将二进制编码转换成ASCII字符)。使用A-Z,a-z,0-9,/,+这64个字符。 阅读全文
posted @ 2018-09-15 11:01 AustinJoe 阅读(451) 评论(0) 推荐(0) 编辑