之前看过张孝闲讲线程中的一个实例,让主线程运行10次,然后子线程再运行20次,这样循环50次。今天自己闲着写了一下,刚写出的代码报了个java.lang.IllegalMonitorStateException的错误,网上查了一下,发现了问题是锁的问题,于是自己总结了一下。
先贴第一版的错误代码:
public class ThreadNotity {
/**...
分类:
编程语言 时间:
2015-04-18 01:15:49
阅读次数:
230
看了“自己动手设计并实现一个linux嵌入式UI框架”显然没有尽兴,因为还没有看到庐山真面目,那我今天继续,先来说说,我用到了哪些知识背景。如:C语言基础知识,尤其是指针、函数指针、内存分布,linux 基础知识、如消息队列、framebuffer、多线程、多线程同步、等,数据结构、算法(如链表、队...
分类:
系统相关 时间:
2015-04-14 12:36:57
阅读次数:
215
在开发中经常会遇到线程的例子,如果某个后台操作比较费时间,我们就可以启动一个线程去执行那个费时的操作,同时程序继续执行。在某些情况下可能会出现多个线程的同步协同的问题,下面的例子就展示了在两个线程之间如何协同工作。这个程序的思路是共同做一件事情(从一个ArrayList中删除元素),如果执行完成了,...
分类:
编程语言 时间:
2015-04-14 00:41:04
阅读次数:
117
首先我们知道创建线程有两种方式:
1.继承Thread类;2.实现Runnable接口。
但是这两这并非完全一样的。下面谈谈区别:
因为Java并不支持多继承的(接口是可以多继承接口的。不过一般我们不提),但支持多实现。当一个类继承了父类,就不能再继承Thread类,只能通过实现接口的形式创建线程。
继承Runnable接口更加符合面向对象的思想。线程分为两部分,一是线程对象,二是线...
分类:
编程语言 时间:
2015-04-10 15:44:44
阅读次数:
190
Java的多线程同步机制和其他语言开发的是一样的,在当前线程中,遇到某个事件时,等待另一个线程运行结束或者另一个线程的事件,然后再决定如何处理。
本例来自书上的实例,精简了代码,调整了部分逻辑,使得看起来更加简洁明了。已经运行通过。
代码如下:
package SwingExample;
import java.awt.BorderLayout;
import java.util.Rand...
分类:
编程语言 时间:
2015-04-09 23:49:04
阅读次数:
333
同步的前提
必须要有两个或以上的线程
必须是所有的线程使用同一个锁
这样保证同步中只能有一个线程在运行
同步的优点解决了多线程的安全问题同步的缺点多个线程判断锁,较为耗费资源class ThreadDemo1 {
public static void main(String[] args) {
Ticket tic = new Ticket();
Threa...
分类:
编程语言 时间:
2015-04-08 09:12:33
阅读次数:
149
在编写多线程程序时无可避免会碰到线程的同步问题。什么是线程的同步呢?举个例子:假如在一个公司里面有一个变量记录某人T的工资count=100,有两个主管A和B(即工作线程)在早一些时候拿了这个变量的值回去 ,过了一段时间A主管将T的工资加了5块,并存回count变量,而B主管将T的工资减去3块,并存...
分类:
编程语言 时间:
2015-03-29 09:24:30
阅读次数:
201
Android如何进行多线程或者异步的处理?
new Thread
Runnable
Handler
AsycTask
什么时候需要多线程和异步?
IO操作(网络操作,文件操作,数据库操作...)
复杂的运算工作
消息接收方法的耗时操作
计划任务
多线程同步synchronized
多线程和界面交互
1.Activity.runOnUiTread(Runnable)...
分类:
移动开发 时间:
2015-03-19 16:28:13
阅读次数:
158
有一天,和老婆打了个赌,现在我的银行账号里共有5000块钱,我们去银行同时取钱,看我俩能不能同时取出5000来。。。。(PS:打赌的代价是:如果都能取出5000,那这10000块都给她买吃的!如果只能取5000,嘿嘿,那就只用着5000块给她买吃的~~~~怎么觉得这条件有点怪怪的nie?)
心动不如行动!她拿着存折去柜台取,我拿着银行卡去ATM机取,找了个合适的时机,我在输入好金额时,一直盯着那个teller的手,他在一切准备就绪后敲回车的同时,我以迅雷不及掩耳之势按下了确定。结果是,我的A...
分类:
编程语言 时间:
2015-03-16 08:39:43
阅读次数:
194
本文主要讲了java中多线程的使用方法、线程同步、线程数据传递、线程状态及相应的一些线程函数用法、概述等。...
分类:
编程语言 时间:
2015-03-14 13:53:14
阅读次数:
321410