并发编程重点:
1 2 3 4 5 6 7 |
|
1、请写一个包含10个线程的程序,主线程必须等待每一个子线程执行完成之后才结束执行,每一个子线程执行的时候都需要打印当前线程名、当前活跃线程数量;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
2、请写一个包含10个线程的程序,并给每一个子线程都创建名为"name"的线程私有变量,变量值为“james”;
1 2 3 4 5 6 7 8 9 10 11 |
|
3、请使用协程写一个消费者生产者模型;
协程知识点:https://www.cnblogs.com/wj-1314/p/9040121.html
协程:单线程下,无法利用多核,可以是一个程序开多个进程,每个进程开启多个线程,每隔线程开启协程;
协程指的是单个线程,因而一旦协程出现阻塞,将会阻塞整个线程。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
4、写一个程序,包含十个线程,子线程必须等待主线程sleep 10秒钟之后才执行,并打印当前时间;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|
5、写一个程序,包含十个线程,同时只能有五个子线程并行执行;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
|
6、写一个程序 ,包含一个名为hello的函数,函数的功能是打印字符串“Hello, World!”,该函数必须在程序执行30秒之后才开始执行(不能使用time.sleep());
1 2 3 4 5 6 7 |
|
7、写一个程序,利用queue实现进程间通信;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
|
8、写一个程序,利用pipe实现进程间通信;
1 2 3 4 5 6 7 8 9 10 11 |
|
9、使用selectors模块创建一个处理客户端消息的服务器程序;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
|
10、使用socketserver创建服务器程序时,如果使用fork或者线程服务器,一个潜在的问题是,恶意的程序可能会发送大量的请求导致服务器崩溃,请写一个程序,避免此类问题;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|
11、请使用asyncio实现一个socket服务器端程序;
12、写一个程序,使用socketserver模块,实现一个支持同时处理多个客户端请求的服务器,要求每次启动一个新线程处理客户端请求;
1 2 3 4 5 6 7 8 9 |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
|
数据库重点:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
|
修改表结构的语法
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
|
1、创建一个表student,包含ID(学生学号),sname(学生姓名),gender(性别),credit(信用卡号),四个字段,要求:ID是主键,且值自动递增,sname是可变长字符类型,gender是枚举类型, credit是可变长字符类型;
1 2 3 4 5 6 |
|
2、在上面的student表中增加一个名为class_id的外键,外键引用class表的cid字段;
1 2 3 4 5 6 7 |
|
3、向该表新增一条数据,ID为1,学生姓名为alex,性别女,修改ID为1的学生姓名为wupeiqi,删除该数据;
1 2 3 4 5 6 |
|
4、查询student表中,每个班级的学生数;
1 2 3 4 5 |
|
5、修改credit字段为unique属性;
1 |
|
6、请使用命令在你本地数据库中增加一个用户,并给该用户授予创建表的权限;
1 |
|
7、请使用pymsql模块连接你本地数据库,并向student表中插入一条数据;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|
8、请使用mysqldump命令备份student表;
1 |
|
9、创建一张名为student_insert_log的表,要求每次插入一条新数据到student表时,都向student_insert_log表中插入一条记录,记录student_id, insert_time;
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 |
|
原文地址:https://www.cnblogs.com/anzhangjun/p/9459131.html