摘要:
一、使用ReentrantLock类 在Java多线程中,可以使用synchronized关键字来实现线程之间的同步互斥,但ReentrantLock类也能达到同样的效果,并且在扩展功能上也更加强大,比如具有嗅探锁定、多路分支通知等功能,而且在使用上也比synchronized更加的灵活。 1.使用 阅读全文
摘要:
线程是操作系统中独立的个体,但这些个体如果不经过特殊的处理就不能成为一个整体。线程间的通信就是成为整体的必用方案之一,可以说,使线程间进行通信后,系统之间的交互性会更强大,在大大提高CPU利用率的同时还会使程序员对各线程任务在处理的过程中进行有效地把控与监督。 一、等待/通知机制 1.不使用等待/通 阅读全文
摘要:
一、synchronized同步方法 1.方法内的变量为线程安全 “非线程安全”问题存在于“实例变量”中,如果是方法内部的私有变量,则不存在“非线程安全”问题,所得结果也就是“线程安全”的了。 示例:由于HasSelfPrivateNum类中的addI(String username)方法的num变 阅读全文
摘要:
一、进程和多线程的概念以及线程的优点 打开Windo任务管理器可以看到很多正在运行着的exe程序,完全可以将运行在内存中的exe文件理解成进程,进程是受操作系统管理的基本运行单元。 线程可以理解成在进程中独立运行的子任务。比如,QQ.exe运行时就有很多的子任务在同时运行。 使用线程,可以最大限度地 阅读全文
摘要:
一、事务机制 1.事务的概念 事务是指一组互相依赖的操作单元的集合,用来保证对数据库的正确修改,保持数据的完整性,如果一个事务的某个单元操作失败,将取消本次事务的全部操作。 比如将A账户的资金转入B账户,在A中扣除成功,在B中添加失败,导致数据失去平衡,事务将回滚到原始状态,即A中没少,B中没多。 阅读全文
摘要:
一、优化概述 为了提高MySQL数据库的性能,不要进行一系列的优化措施。如果MySQL数据库需要进行大量的查询操作,那么就需要对查询语句进行优化。对于耗费时间的查询语句进行优化,可以提高整体地查询速度。如果连接MySQL数据库的用户很多,那么就需要对MySQL服务器进行优化,否则,大量的用户同时连接 阅读全文
摘要:
一、数据备份 1.使用mysqldmp命令备份 (1)备份一个数据库 (2)备份多个数据库 (3)备份所有数据库 2.直接复制整个数据库目录(先找到数据库文件的保存位置,然后将数据库文件直接复制出来) 3.使用mysqlhotcopy工具快速备份(是一个Perl脚本,主要在Linux操作系统下使用, 阅读全文
摘要:
一、创建存储过程与存储函数 1.创建存储过程(实现统计tb_borrow1数据表中指定图书编号的图书的借阅次数) 2.创建存储函数 (实现统计tb_borrow1数据表中指定图书编号的图书的借阅次数) 3.变量的引用 (1)局部变量(以DECLARE声明,仅在BEGIN至END范围内有效) (2)全 阅读全文
摘要:
一、MySQL触发器 触发器是由MySQL的基本命令事件来触发某种特定操作,这些基本的命令由INSERT、UPDATE、DELETE等事件来触发某些特定操作。满足触发器的触发条件时,数据库系统就会自动执行触发器中定义的程序语句。这样可以令某些操作之间的一致性得到协调。 1.创建MySQL触发器 2. 阅读全文
摘要:
一、视图是由数据库中的一个表或多个表导出的虚拟表。其作用是方便用户对数据的操作。 1.视图的概念 2.视图的作用 二、创建视图 创建视图是指在已经存在的数据表上建立视图。视图可以建立在一张表中,也可以建立在多张表中。 1.查看创建视图的权限 结果中两列的值都为Y,这表明root用户具有Select( 阅读全文