我们知道,单个线程计算是串行的,只有等上一个任务结束之后,才能执行下一个任务,所以执行效率是比较低的。那么,如果用多线程执行任务,就可以在单位时间内执行更多的任务,而Master-Worker就是多线程并行计算的一种实现方式。它的思想是,启动两个进程协同工作:Master和Worker进程。Master负责任务的接收和分配,Worker负责具体的子任务执行。每个Worker执行完任务之后把结果返回
分类:
其他好文 时间:
2020-08-17 16:40:21
阅读次数:
52
1. 互斥锁: 对全局变量进行锁定,保证同一时刻只有一个线程在操作共享全局变量,保证了共享数据操作的完整性 互斥锁应用场景: 资源竞争问题 互斥锁的缺点: 阻止了多线程并发执行,含锁的代码只能以单线程模式执行,效率就大大地下降了; 容易出现死锁问题; 2. 死锁问题: 在两个或多个线程中,如果每个线 ...
分类:
编程语言 时间:
2020-08-08 21:19:12
阅读次数:
81
什么是索引 在现实生活中,我们经常去图书馆查阅图书。现在我们将所有图书杂乱无章的摆放在一起,那么找一本书就像大海捞针一样效率非常低。如果我们按分类整理排序后,根据类别去找对应的图书那么效率就很高了。其实这个过程就是在建立索引。 查看mysql中语句执行效率 show variables like ' ...
分类:
数据库 时间:
2020-08-08 17:46:39
阅读次数:
87
1、MySQL存储过程 1.1、什么是存储过程 带有逻辑的sql语句;带有流程控制语句(if while)等等 的sql语句 1.2、存储过程的特点 1)执行效率非常快,存储过程是数据库的服务器端执行的。 2)移植性很差,不同数据库的存储过程是不能移植的。 2、存储过程的语法 -- 创建存储过程1 ...
分类:
数据库 时间:
2020-07-30 18:23:45
阅读次数:
93
数据准备: drop table if exists t1; /* 如果表t1存在则删除表t1 */ CREATE TABLE `t1` ( `id` int(11) NOT NULL AUTO_INCREMENT, `a` int(11) DEFAULT NULL, `b` int(11) NOT ...
分类:
其他好文 时间:
2020-07-28 00:03:44
阅读次数:
96
什么叫结构化程序设计?它的主要内容是什么? 结构化程序设计(structured programming,简称SP)是进行以模块功能和处理过程设计为主的详细设计的基本原则。其概念最早由E.W.Dijikstra在1965年提出的。结构化程序设计思想确实使程序执行效率提高 ,是软件发展的一个重要的里程 ...
分类:
其他好文 时间:
2020-07-27 23:49:27
阅读次数:
205
前言 今天开始学习动态规划,一共有三节,分别是:初识动态规划、动态规划理论、动态规划实战。今天这一节就是初识动态规划。 动态规划比较适合用来求解最优问题,比如最大值、最小值等等。它可以非常显著地降低时间复杂度,提高代码的执行效率。 下面会通过两个非常经典的动态规划问题模型来展示为什么需要动态规划,以 ...
分类:
编程语言 时间:
2020-07-26 02:04:55
阅读次数:
112
python基础小汇总 python是什么? python是一种解释性语言,依赖于解释器,逐行解释成二进制,逐行运行 优点:可以跨平台,开发效率高 缺点:是执行效率低 编译型语言,一次性全部编译成二进制,再执行 优点:执行效率高 缺点:开发效率低,不能跨平台 windows Dos常用命令 浏览目录 ...
分类:
编程语言 时间:
2020-07-25 23:30:15
阅读次数:
70
本篇我们将学习JDK中提供的常用的API之String和StringBuilder。字符串操作在编程中无处不在,但是操作不当也会影响程序的执行效率。为了以后能在项目开发中更好的运用字符串,我们很有必要去学习一下Java中提供的字符串API。 ...
分类:
编程语言 时间:
2020-07-21 13:57:43
阅读次数:
64
字节对齐:一个变量占用n个字节,则该变量的起始地址必须是n的整数倍,即存放起始地址%n=0;如果是结构体,那么结构体的起始地址是其最宽数据类型成员的整数倍;这个是cpu的要求,按照这样的存储方式,cpu查找起来会比较快,以空间来换取时间,提高程序的执行效率。 所以自己在写程序的时候,需要考虑字节对齐 ...
分类:
其他好文 时间:
2020-07-21 10:01:27
阅读次数:
79