/** getAndIncrement returns previous value and increments */
 public void testGetAndIncrement() {
   AtomicLong ai = new AtomicLong(1);
   assertEquals(1, ai.getAndIncrement());
   assertEquals(2, ai.get());
   ai.set(-2);
   assertEquals(-2, ai.getAndIncrement());
   assertEquals(-1, ai.getAndIncrement());
   assertEquals(0, ai.getAndIncrement());
   assertEquals(1, ai.get());
 }
Пример #2
0
  private Distributor(ByteArrayConsumer consumer, T root, Class<T> rootFacade) {
    addDefaultSerializers();
    setConsumer(consumer);

    if (root == null) {
      rootClient = proxyFor(objectsId.getAndIncrement(), rootFacade);
    } else {
      serverFor(root);
    }
  }
Пример #3
0
  protected Request request(long objectId, Method method, Object[] args, boolean expectsResponse)
      throws IOException {
    Request r = new Request(this, method, args);
    long requestId = -1;

    if (expectsResponse) {
      requestId = nextRequest.getAndIncrement();
      requests.put(requestId, r);
    }

    sendRequest(objectId, requestId, r);

    return r;
  }
Пример #4
0
  public ServerObject serverFor(Object o) {

    ServerObject server = serving.get(o);

    if (server == null) {

      server = new ServerObject(objectsId.getAndIncrement(), o);

      serving.put(o, server);
      servingById.put(server.getId(), server);
    }

    return server;
  }