Package org.jboss.remoting

Examples of org.jboss.remoting.Client.invokeOneway()


      // Wait for the connection to return to the pool.
      Thread.sleep(500);
     
      // This invocation should use the pooled connection and go into the queue.
      log.info("making 3rd oneway invocation");
      client.invokeOneway(SLOW + "3", null, false);
     
      // Wait for the connection to return to the pool.
      Thread.sleep(500);
     
      // This invocation should use the pooled connection and get run by the


     
      // This invocation should use the pooled connection and get run by the
      // ServerThread.  The connection should go back into the pool but the
      // ServerThread will be busy for the next 5 seconds.
      log.info("making 4th oneway invocation");
      client.invokeOneway(SLOW + "4", null, false);
     
      // Wait for the connection to return to the pool.
      Thread.sleep(500);
     
      // This invocation should use the pooled connection and have to wait

      Thread.sleep(500);
     
      // This invocation should use the pooled connection and have to wait
      // for 5 seconds.
      log.info("making 5th oneway invocation");
      client.invokeOneway(SLOW + "5", null, false);
     
      assertTrue((System.currentTimeMillis() - start < 3000));
      assertEquals(4, handler.startedCount);
     
      // It's necessary to wait for more than 5000 ms here because one or two

         checkUserAgent(remotingClient, metadata);

         makeExceptionInvocation(remotingClient, metadata);

         remotingClient.invokeOneway("Do something", metadata, true);

         remotingClient.invokeOneway("Do something", metadata, false);
      }
      catch (Throwable throwable)
      {

         makeExceptionInvocation(remotingClient, metadata);

         remotingClient.invokeOneway("Do something", metadata, true);

         remotingClient.invokeOneway("Do something", metadata, false);
      }
      catch (Throwable throwable)
      {
         throw new Exception(throwable);
      }

         clientConfig.put(Client.MAX_NUM_ONEWAY_THREADS, "7");
         clientConfig.put(Client.MAX_ONEWAY_THREAD_POOL_QUEUE_SIZE, "9");
         Client client = new Client(locator, clientConfig);
         client.connect();
        
         client.invokeOneway(FAST, null, true);
         client.invokeOneway(FAST, null, false);
         poolCounter += 2;
         Thread.sleep(1000);
         assertEquals(2, handler.startedCount);
        

         clientConfig.put(Client.MAX_ONEWAY_THREAD_POOL_QUEUE_SIZE, "9");
         Client client = new Client(locator, clientConfig);
         client.connect();
        
         client.invokeOneway(FAST, null, true);
         client.invokeOneway(FAST, null, false);
         poolCounter += 2;
         Thread.sleep(1000);
         assertEquals(2, handler.startedCount);
        
         Field field = ServerInvoker.class.getDeclaredField("onewayThreadPool");

     
      long start = System.currentTimeMillis();
     
      // This invocation should run in pooled thread 1.
      log.info("making 1st oneway invocation");
      client.invokeOneway(SLOW + "1", null, true);
      poolCounter++;
     
      // This invocation should run in pooled thread 2.
      log.info("making 2nd oneway invocation");
      client.invokeOneway(SLOW + "2", null, true);

      client.invokeOneway(SLOW + "1", null, true);
      poolCounter++;
     
      // This invocation should run in pooled thread 2.
      log.info("making 2nd oneway invocation");
      client.invokeOneway(SLOW + "2", null, true);
     
      // This invocation should go into the queue.
      log.info("making 3rd oneway invocation");
      client.invokeOneway(SLOW + "3", null, true);
      assertTrue((System.currentTimeMillis() - start < 1000));

      log.info("making 2nd oneway invocation");
      client.invokeOneway(SLOW + "2", null, true);
     
      // This invocation should go into the queue.
      log.info("making 3rd oneway invocation");
      client.invokeOneway(SLOW + "3", null, true);
      assertTrue((System.currentTimeMillis() - start < 1000));
      Thread.sleep(2000);
      log.info("handler.count: " + handler.startedCount);
      assertEquals(3, handler.startedCount);
     

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.