Example usage for java.util.concurrent.atomic AtomicInteger AtomicInteger

List of usage examples for java.util.concurrent.atomic AtomicInteger AtomicInteger

Introduction

In this page you can find the example usage for java.util.concurrent.atomic AtomicInteger AtomicInteger.

Prototype

public AtomicInteger() 

Source Link

Document

Creates a new AtomicInteger with initial value 0 .

Usage

From source file:Main.java

public static void main(String[] argv) throws Exception {
    AtomicInteger atomicInteger = new AtomicInteger();

    System.out.println(atomicInteger.floatValue());
}

From source file:Main.java

public static void main(String[] argv) throws Exception {
    AtomicInteger atomicInteger = new AtomicInteger();

    System.out.println(atomicInteger.getAndAdd(10));
    System.out.println(atomicInteger.getAndAdd(10));
}

From source file:Main.java

public static void main(String[] argv) throws Exception {
    AtomicInteger atomicInteger = new AtomicInteger();

    atomicInteger.lazySet(2);// www.j  a  va  2  s. c o  m

    System.out.println(atomicInteger);
}

From source file:Main.java

public static void main(String[] argv) throws Exception {
    AtomicInteger atomicInteger = new AtomicInteger();

    atomicInteger.set(2);/* w  w  w. j a v  a  2s .c o m*/

    System.out.println(atomicInteger.longValue());
}

From source file:Main.java

public static void main(String[] argv) throws Exception {
    AtomicInteger atomicInteger = new AtomicInteger();

    atomicInteger.weakCompareAndSet(1, 2);

    System.out.println(atomicInteger);
}

From source file:Main.java

public static void main(String[] argv) throws Exception {
    AtomicInteger atomicInteger = new AtomicInteger();

    atomicInteger.set(2);/* w w w.j a v a2s.c o m*/

    System.out.println(atomicInteger);
}

From source file:TQProducer.java

public static void main(String[] args) {
    final TransferQueue<Integer> tQueue = new LinkedTransferQueue<>();
    final AtomicInteger sequence = new AtomicInteger();

    for (int i = 0; i < 5; i++) {
        try {/*ww  w. j a va 2 s  . c  om*/
            tQueue.put(sequence.incrementAndGet());
            System.out.println("Initial queue: " + tQueue);

            new TQProducer("Producer-1", tQueue, sequence).start();
            new TQConsumer("Consumer-1", tQueue).start();

        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }

}

From source file:cf.service.TestBroker.java

public static void main(String[] args) throws Exception {
    final CfTokens cfTokens = new CfTokens();
    final CfTokens.CfToken target = cfTokens.getCurrentTargetToken();

    if (target == null) {
        System.err.println("It appears you haven't logged into a Cloud Foundry instance with cf.");
        return;//from  w w w . j ava2  s  . c  o m
    }
    if (target.getVersion() == null || target.getVersion() != 2) {
        System.err.println("You must target a v2 Cloud Controller using cf.");
        return;
    }
    if (target.getSpaceGuid() == null) {
        System.err.println("You must select a space to use using cf.");
        return;
    }

    LOGGER.info("Using Cloud Controller at: {}", target.getTarget());

    final int serverPort = 8000;

    final String label = "testbroker";
    final String provider = "Tester";
    final String url = "http://" + localIp(target.getTarget()) + ":" + serverPort;
    final String description = "A service used for testing the service framework.";
    final String version = "0.1";

    final String servicePlan = "ServicePlan";
    final String servicePlanDescription = "Finest service... ever.";

    final String authToken = "SsshhhThisIsASecret";
    final CloudController cloudController = new DefaultCloudController(new DefaultHttpClient(),
            target.getTarget());

    final UUID serviceGuid = UUID.randomUUID(); // We need to keep track of the services GUID.
    //         final String serviceGuid = cloudControllerClient.createService(new CreateServiceRequest(
    //               label, provider, url, description, version
    //         ));
    //         LOGGER.debug("Created service with guid: {}", serviceGuid);
    //

    try (final SimpleHttpServer server = new SimpleHttpServer(new InetSocketAddress(serverPort))) {
        new NettyBrokerServer(server, new Provisioner() {

            private final AtomicInteger id = new AtomicInteger();

            @Override
            public ServiceInstance create(CreateRequest request) {
                LOGGER.info("Creating service");

                final Integer i = id.getAndIncrement();
                final ServiceInstance serviceInstance = new ServiceInstance(i.toString());
                serviceInstance.addGatewayDataField("key", "value");
                serviceInstance.addCredential("user", "test");
                return serviceInstance;
            }

            @Override
            public void delete(String instanceId) {
            }

            @Override
            public ServiceBinding bind(BindRequest request) {
                LOGGER.info("Binding service");

                final Integer i = id.getAndIncrement();
                final ServiceBinding serviceBinding = new ServiceBinding(request.getServiceInstanceId(),
                        i.toString());
                serviceBinding.addGatewayDataField("bindkey", "bind value");
                serviceBinding.addCredential("binduser", "test");
                return serviceBinding;
            }

            @Override
            public void unbind(String instanceId, String handleId) {
            }

            @Override
            public Iterable<String> serviceInstanceIds() {
                return null;
            }

            @Override
            public Iterable<String> bindingIds(String instanceId) {
                return null;
            }

            @Override
            public void removeOrphanedBinding(String instanceId, String bindingId) {
            }

            @Override
            public void removeOrphanedServiceInstance(String instanceId) {
            }
        }, authToken);

        //         final String serviceGuid = cloudControllerClient.createService(new CreateServiceRequest(
        //               label, provider, url, description, version
        //         ));
        //         LOGGER.debug("Created service with guid: {}", serviceGuid);
        //
        //         final String servicePlanGuid = cloudControllerClient.createServicePlan(new CreateServicePlanRequest(servicePlan, servicePlanDescription, serviceGuid));
        //         LOGGER.debug("Created service plan with guid: {}", serviceGuid);
        //
        //         final String authTokenGuid = cloudControllerClient.createAuthToken(new CreateAuthTokenRequest(label, provider, authToken));
        //         LOGGER.debug("Created service token with guid: {}", authTokenGuid);
        //
        //         final String instanceName = "testservice";
        //         final String serviceInstaceGuid = cloudControllerClient.createServiceInstance(instanceName, servicePlanGuid, target.getSpaceGuid());

        System.in.read();
    }
}

From source file:com.easarrive.aws.plugins.common.service.impl.SimpleProducerConsumer.java

public static void main(String[] args) throws InterruptedException {
    final AWSCredentials credentials = new BasicAWSCredentials("AKIAIDPJMKK4UHLE3OVA",
            "A+cn+TT3tUs6xbto5k1IKkWwPLBq995aOkqKxZNY");

    final String endpoint = "sqs.us-west-2.amazonaws.com";
    final String queueName = "image";
    final int producerCount = 10;
    final int consumerCount = 3;
    final int batchSize = 3;
    final int messageSizeByte = 10000;
    final int runTimeMinutes = 100;

    // configure the SQS client with enough connections for all producer and
    // consumer threads
    AmazonSQS sqsClient = new AmazonSQSClient(credentials,
            new ClientConfiguration().withMaxConnections(producerCount + consumerCount));
    sqsClient.setEndpoint(endpoint);//w w w.j  a v a2 s.c  o  m
    String queueUrl = sqsClient.getQueueUrl(new GetQueueUrlRequest(queueName)).getQueueUrl();

    // the flag to stop producer, consumer, and monitor threads
    AtomicBoolean stop = new AtomicBoolean(false);

    // start the producers
    final AtomicInteger producedCount = new AtomicInteger();
    Thread[] producers = new Thread[producerCount];
    for (int i = 0; i < producerCount; i++) {
        producers[i] = new BatchProducer(sqsClient, queueUrl, batchSize, messageSizeByte, producedCount, stop);
        producers[i].start();
    }

    // start the consumers
    final AtomicInteger consumedCount = new AtomicInteger();
    Thread[] consumers = new Thread[consumerCount];
    for (int i = 0; i < consumerCount; i++) {
        consumers[i] = new BatchConsumer(sqsClient, queueUrl, batchSize, consumedCount, stop);
        consumers[i].start();
    }

    // start the monitor (thread)
    Thread monitor = new Monitor(producedCount, consumedCount, stop);
    monitor.start();

    // wait for the specified amount of time then stop
    Thread.sleep(TimeUnit.MINUTES.toMillis(Math.min(runTimeMinutes, MAX_RUNTIME_MINUTES)));
    stop.set(true);

    // join all threads
    for (int i = 0; i < producerCount; i++)
        producers[i].join();

    for (int i = 0; i < consumerCount; i++)
        consumers[i].join();

    monitor.interrupt();
    monitor.join();
}

From source file:com.dxc.temp.SimpleProducerConsumer.java

public static void main(String[] args) throws InterruptedException {
    int argIndex = 0;

    final String accessKey = args[argIndex++];
    final String secretKey = args[argIndex++];
    final AWSCredentials credentials = new BasicAWSCredentials(accessKey, secretKey);

    final String endpoint = args[argIndex++];
    final String queueName = args[argIndex++];
    final int producerCount = Integer.parseInt(args[argIndex++]);
    final int consumerCount = Integer.parseInt(args[argIndex++]);
    final int batchSize = Integer.parseInt(args[argIndex++]);
    final int messageSizeByte = Integer.parseInt(args[argIndex++]);
    final int runTimeMinutes = Integer.parseInt(args[argIndex++]);

    // configure the SQS client with enough connections for all producer and
    // consumer threads
    AmazonSQS sqsClient = new AmazonSQSClient(credentials,
            new ClientConfiguration().withMaxConnections(producerCount + consumerCount));
    sqsClient.setEndpoint(endpoint);/*from  w w  w  . jav a2 s  .co  m*/
    String queueUrl = sqsClient.getQueueUrl(new GetQueueUrlRequest(queueName)).getQueueUrl();

    // the flag to stop producer, consumer, and monitor threads
    AtomicBoolean stop = new AtomicBoolean(false);

    // start the producers
    final AtomicInteger producedCount = new AtomicInteger();
    Thread[] producers = new Thread[producerCount];
    for (int i = 0; i < producerCount; i++) {
        if (batchSize == 1)
            producers[i] = new Producer(sqsClient, queueUrl, messageSizeByte, producedCount, stop);
        else
            producers[i] = new BatchProducer(sqsClient, queueUrl, batchSize, messageSizeByte, producedCount,
                    stop);
        producers[i].start();
    }

    // start the consumers
    final AtomicInteger consumedCount = new AtomicInteger();
    Thread[] consumers = new Thread[consumerCount];
    for (int i = 0; i < consumerCount; i++) {
        if (batchSize == 1)
            consumers[i] = new Consumer(sqsClient, queueUrl, consumedCount, stop);
        else
            consumers[i] = new BatchConsumer(sqsClient, queueUrl, batchSize, consumedCount, stop);
        consumers[i].start();
    }

    // start the monitor (thread)
    Thread monitor = new Monitor(producedCount, consumedCount, stop);
    monitor.start();

    // wait for the specified amount of time then stop
    Thread.sleep(TimeUnit.MINUTES.toMillis(Math.min(runTimeMinutes, MAX_RUNTIME_MINUTES)));
    stop.set(true);

    // join all threads
    for (int i = 0; i < producerCount; i++)
        producers[i].join();

    for (int i = 0; i < consumerCount; i++)
        consumers[i].join();

    monitor.interrupt();
    monitor.join();
}