|
Java example source code file (AtomicBoolean.java)
The AtomicBoolean.java Java example source code/* * Copyright (C) 2015 The Guava Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ /** * Atomically sets the value to the given updated value * if the current value {@code ==} the expected value. * * <p>May fail spuriously * and does not provide ordering guarantees, so is only rarely an * appropriate alternative to {@code compareAndSet}. * * @param expect the expected value * @param update the new value * @return true if successful. */ package java.util.concurrent.atomic; /** * GWT emulation of AtomicBoolean. */ public class AtomicBoolean implements java.io.Serializable { private boolean value; public AtomicBoolean(boolean initialValue) { value = initialValue; } public AtomicBoolean() { } public final boolean get() { return value; } public final boolean compareAndSet(boolean expect, boolean update) { if (get() == expect) { set(update); return true; } return false; } public boolean weakCompareAndSet(boolean expect, boolean update) { return compareAndSet(expect, update); } public final void set(boolean newValue) { value = newValue; } public final void lazySet(boolean newValue) { set(newValue); } public final boolean getAndSet(boolean newValue) { boolean current = get(); set(newValue); return current; } public String toString() { return Boolean.toString(get()); } } Other Java examples (source code examples)Here is a short list of links related to this Java AtomicBoolean.java source code file: |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.