Java基础
GISer.Wang
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
(1)Java多线程的实现
引言Java多线程的实现1 多线程的优缺点2 多线程的实现3使用 Thread实现多线程技术4使用 Runnable实现多线程技术总结1.引言 在学习线程之前,学习一下进程的概念是十分有比较的,那么什么是进程呢?通俗的来讲:进程可以理解为一个应用程序,比如我们打开一个VS软件,或者打开一个myeclipse软件,就产生了一个进程。那么什么是线程呢?线程可以理解为:进程中独立运行原创 2017-01-17 12:38:28 · 1060 阅读 · 0 评论 -
(15)Java多线程之线程异常
引言Sleep相关的异常1 InterruptedExceptionwait相关的异常1 等待阶段调用中断方法异常2 调用wait方法却没有对象锁3 调用wait方法虽然是同步方法但是不是相应的对象锁join相关的异常1 线程等待调用interrupt异常捕捉异常1给对象添加异常捕捉器2 给线程类添加异常捕捉器相当于给全部对象添加异常捕捉3 线程组内处理异常4 自定义异常1原创 2017-01-22 19:11:50 · 683 阅读 · 0 评论 -
(13)Java多线程之线程组
引言将线程放入线程组1 创建一个线程2 main函数3 运行结果线程组常用的方法1 group1interrupt中断组内的所有线程2 uncaughtException给线程组添加默认的异常处理器1.引言 在Java的多线程中有一个线程组的概念,所谓的线程组也就是说线程的组合,线程组是为了方便管理线程而存在的。线程组的结构有一点像树状结构。从上面的图片我们可以看出:在系统线原创 2017-01-21 18:54:18 · 611 阅读 · 0 评论 -
(12)Java多线程之单例模式
引言单例设计模式的实现1 单例之饿汉模式2 单例之饿汉模式 静态代码块3 单例之懒汉模式 多线程有问题4 单例之懒汉模式 多线程解决方案一5 单例之懒汉模式 多线程解决方案二总结1.引言 在本篇博客中主要介绍单例设计模式在多线程中的应用。什么是单例设计模式?单例设计模式就是只在内存中创建一份对象,单例设计模式就是只在内存中创建一份对象,单例设计模式就是只在内存中创建一份对象。原创 2017-01-21 17:45:34 · 621 阅读 · 0 评论 -
(11)Java多线程之Timer
引言使用Timer类1使用schedule执行定时任务2 使用守护线程的Timer执行定时任务3 多个任务验证Timer队列4 验证scheduleAtFixedRate的追赶型总结1.引言 在JDK中Timer类主要负责定时发布任务。也就是说在指定的时间执行一个任务。Timer类主要负责设置计划任务,真正执行任务的类叫做TimerTask类。 这两个类之间的关系原创 2017-01-20 18:46:12 · 804 阅读 · 0 评论 -
(9)Java多线程之Lock接口
引言ReentrantLock类的使用1 使用ReentrantLock进行加锁11 代码实现12 注意事项2 ReentrantLock类实现等待通知机制21 代码实现22注意事项ReentrantReadWriteLock的使用1 使用ReentrantReadWriteLock对象实现共享11 代码实现12注意事项2 ReentrantReadWriteLock类实现互原创 2017-01-20 13:44:44 · 578 阅读 · 0 评论 -
(10)Java多线程之再看生产者/消费者模式
引言多生产多消费模式signal实现1 代码实现2 运行结果3 代码原理总结1.引言 在我们第一次介绍生产者消费者模式的时候,是存在缺点的,缺点就是在唤醒线程的时候,为了避免线程的假死现象,就必须要唤醒所有的线程(其实我们仅仅是想要唤醒对方线程,比如:消费者唤醒生产者线程,生产者唤醒消费者线程)。在本篇博客中就是要解决这个问题,如果利用Lock的等待通知机制唤醒对方线程2.多生产原创 2017-01-20 14:41:10 · 497 阅读 · 0 评论 -
(8)Java多线程之ThreadLocal
引言ThreadLocal的使用1 ThreadLocal最简单的使用2 ThreadLocal实现的原理3 ThreadLocal在多线程中的使用4 使用ThreadLocal控制事务1.引言 在前面几篇博客中主要是介绍了多个线程之间交互,如果在多线程中操作同一个变量,那么如果想要实现每一个线程都有着自己的变量,那么应该如何实现呢?JDK为我们提供一个类ThreadLocal,原创 2017-01-19 18:26:04 · 803 阅读 · 0 评论 -
(6)Java之多线程通信
引言通信一多个线程共享同一个变量1代码实现多个线程共享arr对象通信二B线程等待A线程执行完join1 错误代码2 正确代码使用join方法3 join方法的使用通信三多个线程共享数据通过管道流共享数据1 代码实现2管道流之间的交互过程通信四1不使用等待通知机制的线程交互2 等待通知机制进行线程之间的交互3 等待通知机制的原理总结1.引言 在多线程编程当中,如果原创 2017-01-18 19:26:46 · 792 阅读 · 0 评论 -
(7)Java多线程之消费者/生产者模式
引言一生产一消费情况1 生产者Producer2 消费者Customer3 main函数4 运行结果一生产多消费1 生产者Producer代码不变2 消费者Customer3main方法4 运行结果5 修改代码的原因多生产一消费1 生产者代码修改两处2 消费者代码和一生产一消费的消费者代码一样3main函数代码多生产多消费1生产者代码和多生产一消费代码一样2消费者原创 2017-01-19 16:11:06 · 766 阅读 · 0 评论 -
(5)Java多线程之ArrayList和SimpleDateFormat
引言ArrayList线程安全问题1 ArrayList存在的线程安全问题2 通过内部类解决线程安全问题这里以add方法为例3 通过JDK提供我们的api将ArrayListSimpleDateFormat存在的线程安全问题1 SimpleDateFormat线程非安全2 使用多个SimpleDateFormat对象总结1.引言 在前两篇博客中主要记录了多线程编程中存在的原创 2017-01-18 15:43:10 · 705 阅读 · 0 评论 -
(4)Java多线程之安全问题-下
引言Java多线程中的类锁1 注意区分类锁和对象锁的区别Java中的死锁现象1 最低级的线程死锁现象volatile关键字1 同步死循环问题2 解决死循环记住1.引言 在此篇博客中,主要介绍一下,在Java多线程中的:类锁,死锁,以及volatile关键字。2.Java多线程中的类锁在上一篇博客中我们使用了下面的代码: public synchronized boole原创 2017-01-17 16:49:55 · 732 阅读 · 0 评论 -
(3)Java多线程之安全问题-上
引言现实实例出现问题问题的原因解决多线程安全问题1 给售票方法直接加一个对象锁2 给售票方法直接加锁的弊端3 通过同步块给方法加锁4 通过同步块给方法加锁补充41 补充一42补充二43 补充三总结1.引言 在本篇博客中,我主要记录一下在多线程编程中存在的线程安全问题,以及如何去解决这种问题。2 现实实例(出现问题) 首先我们举个例子:我们开发了一个售票系统原创 2017-01-17 15:17:17 · 1118 阅读 · 0 评论 -
(2)Java多线程Thread提供的方法
引言Java线程提供的方法1 解释静态方法是和当前线程绑定2 利用interrupt方法控制线程停止3 使用yield 可以让线程释放资源4补充总结1.引言 在本片博客中主要记录一下Thread提供的几种方法,利用该方法我们可以实现一些我们的需求。currentThread()方法:注意这是静态方法,用于获得当前线程对象interrupted()方法:注意这是静态方法,用于原创 2017-01-17 13:38:42 · 1094 阅读 · 0 评论 -
(14)Java多线程之线程状态
引言验证线程所处的状态1 验证New状态11 代码示例12代码解释2 验证Runable状态21 代码22代码解释3 验证terminated状态31 代码示例32 代码解释4 验证状态Timed_waiting41 代码示例42 代码解释5 验证Blocked状态51 代码示例52 代码解释6验证Waiting状态61 代码示例62代码解释从线程状态解释生产原创 2017-01-22 16:21:49 · 1038 阅读 · 0 评论
分享