多线程间共享数据问题
一、Synchronized关键字
atomic一词与“原子”无关,它曾经被认为是物质的最小的单元,不能再被拆解成更小的部分。
当一个方法被声明成synchronized,要执行此方法的thread必须先取得一个token,我们将它称为锁。一旦该方法取得(或者说是获得)锁,它将运行此方法然后释放掉(或者返回)此锁。不管方法时怎样返回的(包...
分类:
编程语言 时间:
2014-06-15 17:36:35
阅读次数:
359
1.问题引入 多个业务模块针对同一个static变量的操作 要保证在不同线程中 各模块操作的是自身对应的变量对象例如:package org.lkl.thead;import java.util.Random;/** * 线程共享数据 * Function : * @author : Liaok.....
分类:
编程语言 时间:
2014-06-15 07:11:58
阅读次数:
264
本帖最后由 勇敢的心_ 于 2010-9-29 11:51
编辑本人从windows编程转过来学习Android开发,一直在想如果两个Activity之间能够像C#或delphi中的Form一样,可以直接访问其成员(字符、数值、成员对象等),并能调用其公开的方法,那应该比用Intent来传递数据直接...
分类:
其他好文 时间:
2014-06-12 14:05:03
阅读次数:
266
场景应用:银行转账时,A给B转账,C给D转账。两者都是调用的connection.begainTransaction();connection.commit();
如何才能保证A,B同在一个线程中,C、D同在一个线程中,且A,BC,D在线程内共享,在线程外独立。...
分类:
编程语言 时间:
2014-06-11 00:29:20
阅读次数:
357
ContentProvider类提供了与其他app管理和共享数据的机制。当与其他app共享provider的数据时,必须小心的实现访问控制,防止对敏感数据的非法访问。
限制ContentProvider的访问有三种方法:
Public
Private
Restricted access...
分类:
移动开发 时间:
2014-06-10 10:46:14
阅读次数:
263
ContentProvider:
一、当应用继承ContentProvider类,并重写该类用于提供数据和存储数据的方法,就可以向其他应用共享其数据。虽然使用其他方法也可以对外共享数据,但数据访问方式会因数据存储的方式而不同,如:采用文件方式对外共享数据,需要进行文件操作读写数据;采用sharedpreferences共享数据,需要使用sharedpreferences API读写数据。而使用C...
分类:
移动开发 时间:
2014-06-10 07:52:18
阅读次数:
296
一、ContentProvider简介 当应用继承ContentProvider类,并重写该类用于提供数据和存储数据的方法,就可以向其他应用共享其数据。虽然使用其他方法也可以对外共享数据,但数据访问方式会因数据存储的方式而不同,如:采用文件方式对外共享数据,需要进行文件操作读写数据;采用sharedpreferences共享数据,需要使用sharedpreferences API读写数据。而使用C...
分类:
其他好文 时间:
2014-06-10 06:00:27
阅读次数:
493
多进程与多线程的区别, 本质的区别在于每个进程拥有自己的一整套变量, 然后线程则共享数据.
另外, 与进程比较, 线程更"轻量级", 创建, 撤销一个线程比启动新的进程的开销要小得多. 在实际应用中, 多线程非常有用, 例如:
一个浏览器可以同时下载几幅图片.如果需要执行一个比较耗时的任务, 应该使...
分类:
编程语言 时间:
2014-06-08 19:30:19
阅读次数:
238
volatile关键字表明,即使程序代码没有对内存单元进行修改,其值也可能发生变化。例如,可以将一个指针指向某个硬件位置,其中包含了来自串行端口的时间或信息。在这种情况下,硬件(而不是程序)可能修改其中的内容。或者两个程序可能互相影响,共享数据。该关键字的作用是为了改善编译器的优化能力。例如,假设编译器发现,程序在几条语句中两次使用了某个变量的值,则编译器可能不是让程序查找这个值两次,而是将这个值...
分类:
编程语言 时间:
2014-06-08 05:34:29
阅读次数:
278