這個類真的非常實用,更重要的是 它确實非常簡單:
附上自己的代碼,可以自己試試:
atomicinteger,一個提供原子操作的integer的類。在java語言中,++i和i++操作并不是線程安全的,在使用的時候,不可避免的會用到synchronized關鍵字。而atomicinteger則通過一種線程安全的加減操作接口。
代碼:
package test;
import java.util.concurrent.atomic.atomicinteger;
/**
* 來看atomicinteger提供的接口。
//擷取目前的值
public final int get()
//取目前的值,并設定新的值
public final int getandset(int newvalue)
//擷取目前的值,并自增
public final int getandincrement()
//擷取目前的值,并自減
public final int getanddecrement()
//擷取目前的值,并加上預期的值
public final int getandadd(int delta)
* @author yangbaobao
*
*/
public class atomicintegerdemo {
public static void main(string[] args) {
atomicinteger ai=new atomicinteger(0);
int i1=ai.get();
v(i1);
int i2=ai.getandset(5);
v(i2);
int i3=ai.get();
v(i3);
int i4=ai.getandincrement();
v(i4);
v(ai.get());
}
static void v(int i)
{
system.out.println("i : "+i);
}