コード例 #1
0
 public FetchAndLockHandlerImpl()
 {
     if (!InstanceFieldsInitialized)
     {
         InitializeInstanceFields();
         InstanceFieldsInitialized = true;
     }
     this.condition = new SingleConsumerCondition(handlerThread);
 }
コード例 #2
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test(timeout=10000) public void shouldNotBlockIfSignalAvailable()
        public virtual void shouldNotBlockIfSignalAvailable()
        {
            SingleConsumerCondition condition = new SingleConsumerCondition(Thread.CurrentThread);

            // given
            condition.signal();

            // then
            condition.await(100000);
        }
コード例 #3
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void cannotAwaitFromDifferentThread()
        public virtual void cannotAwaitFromDifferentThread()
        {
            // given
            SingleConsumerCondition condition = new SingleConsumerCondition(new Thread());

            // when then
            try
            {
                condition.await(0);
                Assert.fail("expected exception");
            }
            catch (Exception)
            {
                // expected
            }
        }
コード例 #4
0
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test(timeout=10000) public void shouldNotBlockIfSignalAvailableDifferentThread() throws InterruptedException
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET:
        public virtual void shouldNotBlockIfSignalAvailableDifferentThread()
        {
//JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final':
//ORIGINAL LINE: final org.camunda.bpm.engine.impl.util.SingleConsumerCondition condition = new org.camunda.bpm.engine.impl.util.SingleConsumerCondition(Thread.currentThread());
            SingleConsumerCondition condition = new SingleConsumerCondition(Thread.CurrentThread);

            Thread consumer = new Thread(() =>
            {
                condition.signal();
            });

            consumer.Start();
            consumer.Join();

            // then
            condition.await(100000);
        }
コード例 #5
0
 public virtual void removeConsumer(SingleConsumerCondition condition)
 {
     conditions.remove(condition);
 }
コード例 #6
0
 public virtual void addConsumer(SingleConsumerCondition condition)
 {
     conditions.add(condition);
 }