为什么await()后会执行lock.unlock,await()时不就释放锁了吗
1 是的,释放锁是为了别的线程获得,是为了线程间的通信,是临时释放的,真正满足继续向下执行条件后,被唤醒后获得了锁,做完想做的事后仍需要释放锁,也是为了别的线程能执行或使用共享资源
2 条件锁的理解
Condition c1 = l.newCondition()相当于房间增加了一个门的锁,这个门作为一个交流特殊信息通道与别的线程通信,进行线程间的信息交互,条件锁可以有多把,也就是可以为N种信息与别的线程进行协调交流
举例:
------------------------------------阿姆斯特朗大学梁教授案例讲解
package javajinjie.char29.threadpool;
import java.util.concurrent.*;
import java.util.concurrent.locks.*;
public class ThreadCooperation {
private static Account account = new Account();
private static int delayTime = 8000;
public static void main(String[] args) {
// Create a thread pool with two threads
ExecutorService executor = Executors.newFixedThreadPool(2);
executor.execute(new DepositTask());
executor.execute(new WithdrawTask());
executor.shutdown();
System.out.println("Thread 1\t\tThread 2\t\tBalance");
}
public static class DepositTask implements Runnable {
@Override // Keep adding an amount to the account
public void run() {
try { // Purposely delay it to let the withdraw method proceed
while (true) {
int deposit = (int)(Math.random()*10) ;
account.deposit(deposit);
// System.out.println("DepositTask:" + deposit );
Thread.sleep(delayTime);
}
}
catch (InterruptedException ex) {
ex.printStackTrace();
}
}
}
public static class WithdrawTask implements Runnable {
@Override // Keep subtracting an amount from the account
public void run() {
while (true) {
// account.withdraw((int)(Math.random() * 10) + 1);
account.withdraw(10);
try {
Thread.sleep(delayTime);
} catch (InterruptedException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
}
}
// An inner class for account
private static class Account {
// Create a new lock
private static Lock lock = new ReentrantLock();
// Create a condition
private static Condition newDeposit = lock.newCondition();
private int balance = 0;
public int getBalance() {
return balance;
}
public void withdraw(int amount) {
lock.lock(); // Acquire the lock
try {
if (balance < amount) {
System.out.println("\t\t\t withdraw "+ amount+ " need Wait for a deposit now balance " + getBalance() );
newDeposit.await();
System.out.println("\t\t newDeposit.await() after:---------------------" );
}
else
{
balance -= amount;
System.out.println("\t\t not await() withdraw amount:" + amount + "\t\t"+getBalance());
}
// System.out.println("now balance >= amount not await(),let's Go");
}
catch (InterruptedException ex) {
ex.printStackTrace();
}
finally {
lock.unlock(); // Release the lock
}
}
public void deposit(int amount) {
lock.lock(); // Acquire the lock
try {
balance += amount;
System.out.println("Deposit " + amount +
"\t\t\t\t\t" + getBalance() + "signalAll");
// System.out.println("signalAll");
// Signal thread waiting on the condition
newDeposit.signalAll();
}
finally {
lock.unlock(); // Release the lock
}
}
}
}
//结果分析
//结论如下
1 newDeposit.await() after:--------------------- 都紧跟在signalAll后执行,说明每次唤醒线程都是从await中走出来
2 个人认为await的外层是if还是while效果是一样的,一般执行await的线程任务一般都是一个while死循环任务
下面为执行结果
withdraw 10 need Wait for a deposit now balance 0
Thread 1 Thread 2 Balance
Deposit 4 4signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 4
Deposit 6 10signalAll
newDeposit.await() after:---------------------
Deposit 8 18signalAll
not await() withdraw amount:10 8
withdraw 10 need Wait for a deposit now balance 8
Deposit 5 13signalAll
newDeposit.await() after:---------------------
Deposit 1 14signalAll
not await() withdraw amount:10 4
withdraw 10 need Wait for a deposit now balance 4
Deposit 7 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 4 5signalAll
Deposit 7 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 1 3signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 3
Deposit 8 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 2 3signalAll
withdraw 10 need Wait for a deposit now balance 3
Deposit 9 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 8 10signalAll
not await() withdraw amount:10 0
Deposit 9 9signalAll
Deposit 0 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 0 9signalAll
newDeposit.await() after:---------------------
Deposit 0 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 1 10signalAll
newDeposit.await() after:---------------------
Deposit 8 18signalAll
not await() withdraw amount:10 8
withdraw 10 need Wait for a deposit now balance 8
Deposit 9 17signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 7
Deposit 5 12signalAll
Deposit 0 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 2 4signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 4
Deposit 1 5signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 5
Deposit 7 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 4 6signalAll
Deposit 9 15signalAll
not await() withdraw amount:10 5
withdraw 10 need Wait for a deposit now balance 5
Deposit 1 6signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 6
Deposit 6 12signalAll
newDeposit.await() after:---------------------
Deposit 0 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 4 6signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 6
Deposit 3 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 3 12signalAll
newDeposit.await() after:---------------------
Deposit 4 16signalAll
not await() withdraw amount:10 6
withdraw 10 need Wait for a deposit now balance 6
Deposit 7 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 3 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 5 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 7 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 2 10signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 0
Deposit 4 4signalAll
withdraw 10 need Wait for a deposit now balance 4
Deposit 9 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 3 6signalAll
Deposit 4 10signalAll
not await() withdraw amount:10 0
withdraw 10 need Wait for a deposit now balance 0
Deposit 3 3signalAll
newDeposit.await() after:---------------------
Deposit 5 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 5 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 4 7signalAll
Deposit 0 7signalAll
withdraw 10 need Wait for a deposit now balance 7
Deposit 4 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 3 4signalAll
Deposit 1 5signalAll
withdraw 10 need Wait for a deposit now balance 5
Deposit 9 14signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 4
Deposit 2 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 8 14signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 4
Deposit 2 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 7 13signalAll
newDeposit.await() after:---------------------
Deposit 2 15signalAll
not await() withdraw amount:10 5
withdraw 10 need Wait for a deposit now balance 5
Deposit 6 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 4 5signalAll
Deposit 4 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 0 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 4 13signalAll
newDeposit.await() after:---------------------
Deposit 0 13signalAll
not await() withdraw amount:10 3
withdraw 10 need Wait for a deposit now balance 3
Deposit 6 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 0 9signalAll
newDeposit.await() after:---------------------
Deposit 8 17signalAll
not await() withdraw amount:10 7
Deposit 2 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 0 9signalAll
newDeposit.await() after:---------------------
Deposit 7 16signalAll
not await() withdraw amount:10 6
withdraw 10 need Wait for a deposit now balance 6
Deposit 7 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 1 4signalAll
withdraw 10 need Wait for a deposit now balance 4
Deposit 6 10signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 0
Deposit 5 5signalAll
withdraw 10 need Wait for a deposit now balance 5
Deposit 3 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 0 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 5 13signalAll
newDeposit.await() after:---------------------
Deposit 5 18signalAll
not await() withdraw amount:10 8
withdraw 10 need Wait for a deposit now balance 8
Deposit 5 13signalAll
newDeposit.await() after:---------------------
Deposit 4 17signalAll
not await() withdraw amount:10 7
withdraw 10 need Wait for a deposit now balance 7
Deposit 7 14signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 4
Deposit 4 8signalAll
Deposit 9 17signalAll
not await() withdraw amount:10 7
withdraw 10 need Wait for a deposit now balance 7
Deposit 3 10signalAll
newDeposit.await() after:---------------------
Deposit 5 15signalAll
not await() withdraw amount:10 5
Deposit 8 13signalAll
not await() withdraw amount:10 3
Deposit 1 4signalAll
withdraw 10 need Wait for a deposit now balance 4
Deposit 9 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 4 7signalAll
withdraw 10 need Wait for a deposit now balance 7
Deposit 9 16signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 6
Deposit 0 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 0 6signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 6
Deposit 1 7signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 7
Deposit 0 7signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 7
Deposit 4 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 7 8signalAll
Deposit 9 17signalAll
not await() withdraw amount:10 7
withdraw 10 need Wait for a deposit now balance 7
Deposit 4 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 5 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 2 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 7 15signalAll
newDeposit.await() after:---------------------
Deposit 2 17signalAll
not await() withdraw amount:10 7
Deposit 3 10signalAll
not await() withdraw amount:10 0
withdraw 10 need Wait for a deposit now balance 0
Deposit 0 0signalAll
newDeposit.await() after:---------------------
Deposit 4 4signalAll
withdraw 10 need Wait for a deposit now balance 4
Deposit 6 10signalAll
newDeposit.await() after:---------------------
Deposit 8 18signalAll
not await() withdraw amount:10 8
withdraw 10 need Wait for a deposit now balance 8
Deposit 8 16signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 6
Deposit 0 6signalAll
Deposit 5 11signalAll
not await() withdraw amount:10 1
Deposit 0 1signalAll
withdraw 10 need Wait for a deposit now balance 1
Deposit 7 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 0 8signalAll
newDeposit.await() after:---------------------
Deposit 9 17signalAll
not await() withdraw amount:10 7
Deposit 5 12signalAll
not await() withdraw amount:10 2
Deposit 6 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 0 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 9 17signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 7
Deposit 1 8signalAll
Deposit 3 11signalAll
not await() withdraw amount:10 1
withdraw 10 need Wait for a deposit now balance 1
Deposit 2 3signalAll
newDeposit.await() after:---------------------
Deposit 9 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 0 2signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 2
Deposit 3 5signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 5
Deposit 3 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 2 10signalAll
newDeposit.await() after:---------------------
Deposit 4 14signalAll
not await() withdraw amount:10 4
withdraw 10 need Wait for a deposit now balance 4
Deposit 6 10signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 0
Deposit 4 4signalAll
Deposit 1 5signalAll
withdraw 10 need Wait for a deposit now balance 5
Deposit 3 8signalAll
newDeposit.await() after:---------------------
Deposit 7 15signalAll
not await() withdraw amount:10 5
withdraw 10 need Wait for a deposit now balance 5
Deposit 6 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 9 10signalAll
not await() withdraw amount:10 0
Deposit 7 7signalAll
Deposit 6 13signalAll
not await() withdraw amount:10 3
Deposit 9 12signalAll
not await() withdraw amount:10 2
Deposit 1 3signalAll
withdraw 10 need Wait for a deposit now balance 3
Deposit 6 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 9 18signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 8
Deposit 3 11signalAll
not await() withdraw amount:10 1
Deposit 1 2signalAll
withdraw 10 need Wait for a deposit now balance 2
Deposit 2 4signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 4
Deposit 9 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 5 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 0 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 2 10signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 0
Deposit 3 3signalAll
Deposit 1 4signalAll
withdraw 10 need Wait for a deposit now balance 4
Deposit 8 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 1 3signalAll
withdraw 10 need Wait for a deposit now balance 3
Deposit 7 10signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 0
Deposit 2 2signalAll
withdraw 10 need Wait for a deposit now balance 2
Deposit 9 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 4 5signalAll
Deposit 7 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 6 8signalAll
newDeposit.await() after:---------------------
Deposit 5 13signalAll
not await() withdraw amount:10 3
withdraw 10 need Wait for a deposit now balance 3
Deposit 7 10signalAll
newDeposit.await() after:---------------------
Deposit 0 10signalAll
not await() withdraw amount:10 0
withdraw 10 need Wait for a deposit now balance 0
Deposit 2 2signalAll
newDeposit.await() after:---------------------
Deposit 0 2signalAll
withdraw 10 need Wait for a deposit now balance 2
Deposit 4 6signalAll
newDeposit.await() after:---------------------
Deposit 3 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 6 15signalAll
newDeposit.await() after:---------------------
Deposit 1 16signalAll
not await() withdraw amount:10 6
Deposit 9 15signalAll
not await() withdraw amount:10 5
Deposit 4 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 5 14signalAll
newDeposit.await() after:---------------------
Deposit 7 21signalAll
not await() withdraw amount:10 11
not await() withdraw amount:10 1
Deposit 9 10signalAll
Deposit 2 12signalAll
not await() withdraw amount:10 2
Deposit 3 5signalAll
withdraw 10 need Wait for a deposit now balance 5
Deposit 8 13signalAll
newDeposit.await() after:---------------------
Deposit 7 20signalAll
not await() withdraw amount:10 10
not await() withdraw amount:10 0
Deposit 6 6signalAll
Deposit 0 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 6 12signalAll
newDeposit.await() after:---------------------
Deposit 3 15signalAll
not await() withdraw amount:10 5
withdraw 10 need Wait for a deposit now balance 5
Deposit 6 11signalAll
newDeposit.await() after:---------------------
Deposit 9 20signalAll
not await() withdraw amount:10 10
not await() withdraw amount:10 0
Deposit 5 5signalAll
withdraw 10 need Wait for a deposit now balance 5
Deposit 7 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 6 8signalAll
Deposit 3 11signalAll
not await() withdraw amount:10 1
Deposit 6 7signalAll
withdraw 10 need Wait for a deposit now balance 7
Deposit 1 8signalAll
newDeposit.await() after:---------------------
Deposit 6 14signalAll
not await() withdraw amount:10 4
Deposit 0 4signalAll
withdraw 10 need Wait for a deposit now balance 4
Deposit 2 6signalAll
newDeposit.await() after:---------------------
Deposit 3 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 9 18signalAll
newDeposit.await() after:---------------------
Deposit 1 19signalAll
not await() withdraw amount:10 9
withdraw 10 need Wait for a deposit now balance 9
Deposit 4 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 2 5signalAll
Deposit 7 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 0 2signalAll
newDeposit.await() after:---------------------
Deposit 6 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 4 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 5 7signalAll
Deposit 2 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 5 14signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 4
Deposit 9 13signalAll
not await() withdraw amount:10 3
Deposit 5 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 0 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 4 12signalAll
newDeposit.await() after:---------------------
Deposit 0 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 7 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 8 17signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 7
Deposit 4 11signalAll
Deposit 3 14signalAll
not await() withdraw amount:10 4
withdraw 10 need Wait for a deposit now balance 4
Deposit 0 4signalAll
newDeposit.await() after:---------------------
Deposit 2 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 2 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 3 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 4 5signalAll
Deposit 6 11signalAll
not await() withdraw amount:10 1
withdraw 10 need Wait for a deposit now balance 1
Deposit 1 2signalAll
newDeposit.await() after:---------------------
Deposit 4 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 8 14signalAll
newDeposit.await() after:---------------------
Deposit 3 17signalAll
not await() withdraw amount:10 7
withdraw 10 need Wait for a deposit now balance 7
Deposit 1 8signalAll
newDeposit.await() after:---------------------
Deposit 7 15signalAll
not await() withdraw amount:10 5
Deposit 2 7signalAll
withdraw 10 need Wait for a deposit now balance 7
Deposit 6 13signalAll
newDeposit.await() after:---------------------
Deposit 8 21signalAll
not await() withdraw amount:10 11
Deposit 9 20signalAll
not await() withdraw amount:10 10
not await() withdraw amount:10 0
Deposit 6 6signalAll
Deposit 4 10signalAll
not await() withdraw amount:10 0
withdraw 10 need Wait for a deposit now balance 0
Deposit 9 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 6 15signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 5
Deposit 8 13signalAll
Deposit 6 19signalAll
not await() withdraw amount:10 9
withdraw 10 need Wait for a deposit now balance 9
Deposit 3 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 9 11signalAll
Deposit 7 18signalAll
not await() withdraw amount:10 8
withdraw 10 need Wait for a deposit now balance 8
Deposit 3 11signalAll
newDeposit.await() after:---------------------
Deposit 7 18signalAll
not await() withdraw amount:10 8
withdraw 10 need Wait for a deposit now balance 8
Deposit 4 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 9 11signalAll
not await() withdraw amount:10 1
Deposit 1 2signalAll
Deposit 6 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 4 12signalAll
newDeposit.await() after:---------------------
Deposit 1 13signalAll
not await() withdraw amount:10 3
Deposit 3 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 1 7signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 7
Deposit 2 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 1 10signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 0
Deposit 6 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 0 6signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 6
Deposit 8 14signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 4
Deposit 9 13signalAll
Deposit 8 21signalAll
not await() withdraw amount:10 11
not await() withdraw amount:10 1
Deposit 9 10signalAll
not await() withdraw amount:10 0
Deposit 3 3signalAll
Deposit 5 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 3 11signalAll
newDeposit.await() after:---------------------
Deposit 1 12signalAll
not await() withdraw amount:10 2
Deposit 0 2signalAll
withdraw 10 need Wait for a deposit now balance 2
Deposit 9 11signalAll
newDeposit.await() after:---------------------
Deposit 8 19signalAll
not await() withdraw amount:10 9
Deposit 1 10signalAll
not await() withdraw amount:10 0
Deposit 1 1signalAll
withdraw 10 need Wait for a deposit now balance 1
Deposit 9 10signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 0
Deposit 6 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 7 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 7 10signalAll
not await() withdraw amount:10 0
Deposit 8 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 0 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 3 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 8 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 3 12signalAll
newDeposit.await() after:---------------------
Deposit 2 14signalAll
not await() withdraw amount:10 4
Deposit 9 13signalAll
not await() withdraw amount:10 3
withdraw 10 need Wait for a deposit now balance 3
Deposit 5 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 6 14signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 4
Deposit 8 12signalAll
Deposit 8 20signalAll
not await() withdraw amount:10 10
not await() withdraw amount:10 0
Deposit 4 4signalAll
Deposit 4 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 8 16signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 6
Deposit 5 11signalAll
not await() withdraw amount:10 1
Deposit 1 2signalAll
Deposit 2 4signalAll
withdraw 10 need Wait for a deposit now balance 4
Deposit 3 7signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 7
Deposit 8 15signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 5
Deposit 9 14signalAll
not await() withdraw amount:10 4
Deposit 8 12signalAll
Deposit 1 13signalAll
not await() withdraw amount:10 3
withdraw 10 need Wait for a deposit now balance 3
Deposit 1 4signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 4
Deposit 5 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 9 18signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 8
Deposit 2 10signalAll
not await() withdraw amount:10 0
Deposit 7 7signalAll
Deposit 5 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 5 7signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 7
Deposit 8 15signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 5
Deposit 1 6signalAll
Deposit 6 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 9 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 2 3signalAll
withdraw 10 need Wait for a deposit now balance 3
Deposit 5 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 3 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 7 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 4 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 6 8signalAll
Deposit 1 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 4 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 1 4signalAll
Deposit 3 7signalAll
withdraw 10 need Wait for a deposit now balance 7
Deposit 1 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 4 12signalAll
newDeposit.await() after:---------------------
Deposit 3 15signalAll
not await() withdraw amount:10 5
withdraw 10 need Wait for a deposit now balance 5
Deposit 3 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 9 17signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 7
Deposit 8 15signalAll
not await() withdraw amount:10 5
Deposit 7 12signalAll
Deposit 7 19signalAll
not await() withdraw amount:10 9
withdraw 10 need Wait for a deposit now balance 9
Deposit 2 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 7 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 0 8signalAll
newDeposit.await() after:---------------------
Deposit 4 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 8 10signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 0
Deposit 5 5signalAll
Deposit 1 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 2 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 3 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 5 6signalAll
Deposit 7 13signalAll
not await() withdraw amount:10 3
withdraw 10 need Wait for a deposit now balance 3
Deposit 8 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 6 7signalAll
withdraw 10 need Wait for a deposit now balance 7
Deposit 0 7signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 7
Deposit 1 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 1 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 2 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 2 3signalAll
withdraw 10 need Wait for a deposit now balance 3
Deposit 0 3signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 3
Deposit 8 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 7 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 8 16signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 6
Deposit 5 11signalAll
not await() withdraw amount:10 1
Deposit 7 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 3 11signalAll
newDeposit.await() after:---------------------
Deposit 9 20signalAll
not await() withdraw amount:10 10
Deposit 5 15signalAll
not await() withdraw amount:10 5
Deposit 3 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 5 13signalAll
newDeposit.await() after:---------------------
Deposit 9 22signalAll
not await() withdraw amount:10 12
Deposit 1 13signalAll
not await() withdraw amount:10 3
Deposit 7 10signalAll
not await() withdraw amount:10 0
Deposit 1 1signalAll
withdraw 10 need Wait for a deposit now balance 1
Deposit 5 6signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 6
Deposit 7 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 3 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 3 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 5 14signalAll
newDeposit.await() after:---------------------
Deposit 6 20signalAll
not await() withdraw amount:10 10
Deposit 4 14signalAll
not await() withdraw amount:10 4
withdraw 10 need Wait for a deposit now balance 4
Deposit 1 5signalAll
newDeposit.await() after:---------------------
Deposit 3 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 9 17signalAll
newDeposit.await() after:---------------------
Deposit 9 26signalAll
not await() withdraw amount:10 16
Deposit 3 19signalAll
not await() withdraw amount:10 9
Deposit 1 10signalAll
not await() withdraw amount:10 0
Deposit 1 1signalAll
withdraw 10 need Wait for a deposit now balance 1
Deposit 4 5signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 5
Deposit 4 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 5 14signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 4
Deposit 0 4signalAll
withdraw 10 need Wait for a deposit now balance 4
Deposit 2 6signalAll
newDeposit.await() after:---------------------
Deposit 2 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 9 17signalAll
newDeposit.await() after:---------------------
Deposit 3 20signalAll
not await() withdraw amount:10 10
Deposit 2 12signalAll
not await() withdraw amount:10 2
Deposit 5 7signalAll
withdraw 10 need Wait for a deposit now balance 7
Deposit 3 10signalAll
newDeposit.await() after:---------------------
Deposit 7 17signalAll
not await() withdraw amount:10 7
withdraw 10 need Wait for a deposit now balance 7
Deposit 1 8signalAll
newDeposit.await() after:---------------------
Deposit 2 10signalAll
not await() withdraw amount:10 0
withdraw 10 need Wait for a deposit now balance 0
Deposit 4 4signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 4
Deposit 8 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 0 2signalAll
withdraw 10 need Wait for a deposit now balance 2
Deposit 7 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 6 15signalAll
newDeposit.await() after:---------------------
Deposit 3 18signalAll
not await() withdraw amount:10 8
withdraw 10 need Wait for a deposit now balance 8
Deposit 1 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 9 18signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 8
Deposit 9 17signalAll
Deposit 6 23signalAll
not await() withdraw amount:10 13
not await() withdraw amount:10 3
Deposit 5 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 0 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 4 12signalAll
newDeposit.await() after:---------------------
Deposit 6 18signalAll
not await() withdraw amount:10 8
withdraw 10 need Wait for a deposit now balance 8
Deposit 0 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 9 17signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 7
Deposit 3 10signalAll
not await() withdraw amount:10 0
Deposit 8 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 8 16signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 6
Deposit 7 13signalAll
not await() withdraw amount:10 3
Deposit 2 5signalAll
withdraw 10 need Wait for a deposit now balance 5
Deposit 9 14signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 4
Deposit 2 6signalAll
Deposit 9 15signalAll
not await() withdraw amount:10 5
withdraw 10 need Wait for a deposit now balance 5
Deposit 7 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 8 10signalAll
not await() withdraw amount:10 0
Deposit 8 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 9 17signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 7
Deposit 1 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 4 12signalAll
newDeposit.await() after:---------------------
Thread 1 Thread 2 Balance
Deposit 4 4signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 4
Deposit 6 10signalAll
newDeposit.await() after:---------------------
Deposit 8 18signalAll
not await() withdraw amount:10 8
withdraw 10 need Wait for a deposit now balance 8
Deposit 5 13signalAll
newDeposit.await() after:---------------------
Deposit 1 14signalAll
not await() withdraw amount:10 4
withdraw 10 need Wait for a deposit now balance 4
Deposit 7 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 4 5signalAll
Deposit 7 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 1 3signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 3
Deposit 8 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 2 3signalAll
withdraw 10 need Wait for a deposit now balance 3
Deposit 9 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 8 10signalAll
not await() withdraw amount:10 0
Deposit 9 9signalAll
Deposit 0 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 0 9signalAll
newDeposit.await() after:---------------------
Deposit 0 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 1 10signalAll
newDeposit.await() after:---------------------
Deposit 8 18signalAll
not await() withdraw amount:10 8
withdraw 10 need Wait for a deposit now balance 8
Deposit 9 17signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 7
Deposit 5 12signalAll
Deposit 0 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 2 4signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 4
Deposit 1 5signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 5
Deposit 7 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 4 6signalAll
Deposit 9 15signalAll
not await() withdraw amount:10 5
withdraw 10 need Wait for a deposit now balance 5
Deposit 1 6signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 6
Deposit 6 12signalAll
newDeposit.await() after:---------------------
Deposit 0 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 4 6signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 6
Deposit 3 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 3 12signalAll
newDeposit.await() after:---------------------
Deposit 4 16signalAll
not await() withdraw amount:10 6
withdraw 10 need Wait for a deposit now balance 6
Deposit 7 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 3 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 5 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 7 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 2 10signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 0
Deposit 4 4signalAll
withdraw 10 need Wait for a deposit now balance 4
Deposit 9 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 3 6signalAll
Deposit 4 10signalAll
not await() withdraw amount:10 0
withdraw 10 need Wait for a deposit now balance 0
Deposit 3 3signalAll
newDeposit.await() after:---------------------
Deposit 5 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 5 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 4 7signalAll
Deposit 0 7signalAll
withdraw 10 need Wait for a deposit now balance 7
Deposit 4 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 3 4signalAll
Deposit 1 5signalAll
withdraw 10 need Wait for a deposit now balance 5
Deposit 9 14signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 4
Deposit 2 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 8 14signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 4
Deposit 2 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 7 13signalAll
newDeposit.await() after:---------------------
Deposit 2 15signalAll
not await() withdraw amount:10 5
withdraw 10 need Wait for a deposit now balance 5
Deposit 6 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 4 5signalAll
Deposit 4 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 0 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 4 13signalAll
newDeposit.await() after:---------------------
Deposit 0 13signalAll
not await() withdraw amount:10 3
withdraw 10 need Wait for a deposit now balance 3
Deposit 6 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 0 9signalAll
newDeposit.await() after:---------------------
Deposit 8 17signalAll
not await() withdraw amount:10 7
Deposit 2 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 0 9signalAll
newDeposit.await() after:---------------------
Deposit 7 16signalAll
not await() withdraw amount:10 6
withdraw 10 need Wait for a deposit now balance 6
Deposit 7 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 1 4signalAll
withdraw 10 need Wait for a deposit now balance 4
Deposit 6 10signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 0
Deposit 5 5signalAll
withdraw 10 need Wait for a deposit now balance 5
Deposit 3 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 0 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 5 13signalAll
newDeposit.await() after:---------------------
Deposit 5 18signalAll
not await() withdraw amount:10 8
withdraw 10 need Wait for a deposit now balance 8
Deposit 5 13signalAll
newDeposit.await() after:---------------------
Deposit 4 17signalAll
not await() withdraw amount:10 7
withdraw 10 need Wait for a deposit now balance 7
Deposit 7 14signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 4
Deposit 4 8signalAll
Deposit 9 17signalAll
not await() withdraw amount:10 7
withdraw 10 need Wait for a deposit now balance 7
Deposit 3 10signalAll
newDeposit.await() after:---------------------
Deposit 5 15signalAll
not await() withdraw amount:10 5
Deposit 8 13signalAll
not await() withdraw amount:10 3
Deposit 1 4signalAll
withdraw 10 need Wait for a deposit now balance 4
Deposit 9 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 4 7signalAll
withdraw 10 need Wait for a deposit now balance 7
Deposit 9 16signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 6
Deposit 0 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 0 6signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 6
Deposit 1 7signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 7
Deposit 0 7signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 7
Deposit 4 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 7 8signalAll
Deposit 9 17signalAll
not await() withdraw amount:10 7
withdraw 10 need Wait for a deposit now balance 7
Deposit 4 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 5 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 2 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 7 15signalAll
newDeposit.await() after:---------------------
Deposit 2 17signalAll
not await() withdraw amount:10 7
Deposit 3 10signalAll
not await() withdraw amount:10 0
withdraw 10 need Wait for a deposit now balance 0
Deposit 0 0signalAll
newDeposit.await() after:---------------------
Deposit 4 4signalAll
withdraw 10 need Wait for a deposit now balance 4
Deposit 6 10signalAll
newDeposit.await() after:---------------------
Deposit 8 18signalAll
not await() withdraw amount:10 8
withdraw 10 need Wait for a deposit now balance 8
Deposit 8 16signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 6
Deposit 0 6signalAll
Deposit 5 11signalAll
not await() withdraw amount:10 1
Deposit 0 1signalAll
withdraw 10 need Wait for a deposit now balance 1
Deposit 7 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 0 8signalAll
newDeposit.await() after:---------------------
Deposit 9 17signalAll
not await() withdraw amount:10 7
Deposit 5 12signalAll
not await() withdraw amount:10 2
Deposit 6 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 0 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 9 17signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 7
Deposit 1 8signalAll
Deposit 3 11signalAll
not await() withdraw amount:10 1
withdraw 10 need Wait for a deposit now balance 1
Deposit 2 3signalAll
newDeposit.await() after:---------------------
Deposit 9 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 0 2signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 2
Deposit 3 5signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 5
Deposit 3 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 2 10signalAll
newDeposit.await() after:---------------------
Deposit 4 14signalAll
not await() withdraw amount:10 4
withdraw 10 need Wait for a deposit now balance 4
Deposit 6 10signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 0
Deposit 4 4signalAll
Deposit 1 5signalAll
withdraw 10 need Wait for a deposit now balance 5
Deposit 3 8signalAll
newDeposit.await() after:---------------------
Deposit 7 15signalAll
not await() withdraw amount:10 5
withdraw 10 need Wait for a deposit now balance 5
Deposit 6 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 9 10signalAll
not await() withdraw amount:10 0
Deposit 7 7signalAll
Deposit 6 13signalAll
not await() withdraw amount:10 3
Deposit 9 12signalAll
not await() withdraw amount:10 2
Deposit 1 3signalAll
withdraw 10 need Wait for a deposit now balance 3
Deposit 6 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 9 18signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 8
Deposit 3 11signalAll
not await() withdraw amount:10 1
Deposit 1 2signalAll
withdraw 10 need Wait for a deposit now balance 2
Deposit 2 4signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 4
Deposit 9 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 5 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 0 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 2 10signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 0
Deposit 3 3signalAll
Deposit 1 4signalAll
withdraw 10 need Wait for a deposit now balance 4
Deposit 8 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 1 3signalAll
withdraw 10 need Wait for a deposit now balance 3
Deposit 7 10signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 0
Deposit 2 2signalAll
withdraw 10 need Wait for a deposit now balance 2
Deposit 9 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 4 5signalAll
Deposit 7 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 6 8signalAll
newDeposit.await() after:---------------------
Deposit 5 13signalAll
not await() withdraw amount:10 3
withdraw 10 need Wait for a deposit now balance 3
Deposit 7 10signalAll
newDeposit.await() after:---------------------
Deposit 0 10signalAll
not await() withdraw amount:10 0
withdraw 10 need Wait for a deposit now balance 0
Deposit 2 2signalAll
newDeposit.await() after:---------------------
Deposit 0 2signalAll
withdraw 10 need Wait for a deposit now balance 2
Deposit 4 6signalAll
newDeposit.await() after:---------------------
Deposit 3 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 6 15signalAll
newDeposit.await() after:---------------------
Deposit 1 16signalAll
not await() withdraw amount:10 6
Deposit 9 15signalAll
not await() withdraw amount:10 5
Deposit 4 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 5 14signalAll
newDeposit.await() after:---------------------
Deposit 7 21signalAll
not await() withdraw amount:10 11
not await() withdraw amount:10 1
Deposit 9 10signalAll
Deposit 2 12signalAll
not await() withdraw amount:10 2
Deposit 3 5signalAll
withdraw 10 need Wait for a deposit now balance 5
Deposit 8 13signalAll
newDeposit.await() after:---------------------
Deposit 7 20signalAll
not await() withdraw amount:10 10
not await() withdraw amount:10 0
Deposit 6 6signalAll
Deposit 0 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 6 12signalAll
newDeposit.await() after:---------------------
Deposit 3 15signalAll
not await() withdraw amount:10 5
withdraw 10 need Wait for a deposit now balance 5
Deposit 6 11signalAll
newDeposit.await() after:---------------------
Deposit 9 20signalAll
not await() withdraw amount:10 10
not await() withdraw amount:10 0
Deposit 5 5signalAll
withdraw 10 need Wait for a deposit now balance 5
Deposit 7 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 6 8signalAll
Deposit 3 11signalAll
not await() withdraw amount:10 1
Deposit 6 7signalAll
withdraw 10 need Wait for a deposit now balance 7
Deposit 1 8signalAll
newDeposit.await() after:---------------------
Deposit 6 14signalAll
not await() withdraw amount:10 4
Deposit 0 4signalAll
withdraw 10 need Wait for a deposit now balance 4
Deposit 2 6signalAll
newDeposit.await() after:---------------------
Deposit 3 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 9 18signalAll
newDeposit.await() after:---------------------
Deposit 1 19signalAll
not await() withdraw amount:10 9
withdraw 10 need Wait for a deposit now balance 9
Deposit 4 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 2 5signalAll
Deposit 7 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 0 2signalAll
newDeposit.await() after:---------------------
Deposit 6 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 4 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 5 7signalAll
Deposit 2 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 5 14signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 4
Deposit 9 13signalAll
not await() withdraw amount:10 3
Deposit 5 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 0 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 4 12signalAll
newDeposit.await() after:---------------------
Deposit 0 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 7 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 8 17signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 7
Deposit 4 11signalAll
Deposit 3 14signalAll
not await() withdraw amount:10 4
withdraw 10 need Wait for a deposit now balance 4
Deposit 0 4signalAll
newDeposit.await() after:---------------------
Deposit 2 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 2 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 3 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 4 5signalAll
Deposit 6 11signalAll
not await() withdraw amount:10 1
withdraw 10 need Wait for a deposit now balance 1
Deposit 1 2signalAll
newDeposit.await() after:---------------------
Deposit 4 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 8 14signalAll
newDeposit.await() after:---------------------
Deposit 3 17signalAll
not await() withdraw amount:10 7
withdraw 10 need Wait for a deposit now balance 7
Deposit 1 8signalAll
newDeposit.await() after:---------------------
Deposit 7 15signalAll
not await() withdraw amount:10 5
Deposit 2 7signalAll
withdraw 10 need Wait for a deposit now balance 7
Deposit 6 13signalAll
newDeposit.await() after:---------------------
Deposit 8 21signalAll
not await() withdraw amount:10 11
Deposit 9 20signalAll
not await() withdraw amount:10 10
not await() withdraw amount:10 0
Deposit 6 6signalAll
Deposit 4 10signalAll
not await() withdraw amount:10 0
withdraw 10 need Wait for a deposit now balance 0
Deposit 9 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 6 15signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 5
Deposit 8 13signalAll
Deposit 6 19signalAll
not await() withdraw amount:10 9
withdraw 10 need Wait for a deposit now balance 9
Deposit 3 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 9 11signalAll
Deposit 7 18signalAll
not await() withdraw amount:10 8
withdraw 10 need Wait for a deposit now balance 8
Deposit 3 11signalAll
newDeposit.await() after:---------------------
Deposit 7 18signalAll
not await() withdraw amount:10 8
withdraw 10 need Wait for a deposit now balance 8
Deposit 4 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 9 11signalAll
not await() withdraw amount:10 1
Deposit 1 2signalAll
Deposit 6 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 4 12signalAll
newDeposit.await() after:---------------------
Deposit 1 13signalAll
not await() withdraw amount:10 3
Deposit 3 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 1 7signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 7
Deposit 2 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 1 10signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 0
Deposit 6 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 0 6signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 6
Deposit 8 14signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 4
Deposit 9 13signalAll
Deposit 8 21signalAll
not await() withdraw amount:10 11
not await() withdraw amount:10 1
Deposit 9 10signalAll
not await() withdraw amount:10 0
Deposit 3 3signalAll
Deposit 5 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 3 11signalAll
newDeposit.await() after:---------------------
Deposit 1 12signalAll
not await() withdraw amount:10 2
Deposit 0 2signalAll
withdraw 10 need Wait for a deposit now balance 2
Deposit 9 11signalAll
newDeposit.await() after:---------------------
Deposit 8 19signalAll
not await() withdraw amount:10 9
Deposit 1 10signalAll
not await() withdraw amount:10 0
Deposit 1 1signalAll
withdraw 10 need Wait for a deposit now balance 1
Deposit 9 10signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 0
Deposit 6 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 7 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 7 10signalAll
not await() withdraw amount:10 0
Deposit 8 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 0 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 3 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 8 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 3 12signalAll
newDeposit.await() after:---------------------
Deposit 2 14signalAll
not await() withdraw amount:10 4
Deposit 9 13signalAll
not await() withdraw amount:10 3
withdraw 10 need Wait for a deposit now balance 3
Deposit 5 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 6 14signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 4
Deposit 8 12signalAll
Deposit 8 20signalAll
not await() withdraw amount:10 10
not await() withdraw amount:10 0
Deposit 4 4signalAll
Deposit 4 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 8 16signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 6
Deposit 5 11signalAll
not await() withdraw amount:10 1
Deposit 1 2signalAll
Deposit 2 4signalAll
withdraw 10 need Wait for a deposit now balance 4
Deposit 3 7signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 7
Deposit 8 15signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 5
Deposit 9 14signalAll
not await() withdraw amount:10 4
Deposit 8 12signalAll
Deposit 1 13signalAll
not await() withdraw amount:10 3
withdraw 10 need Wait for a deposit now balance 3
Deposit 1 4signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 4
Deposit 5 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 9 18signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 8
Deposit 2 10signalAll
not await() withdraw amount:10 0
Deposit 7 7signalAll
Deposit 5 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 5 7signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 7
Deposit 8 15signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 5
Deposit 1 6signalAll
Deposit 6 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 9 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 2 3signalAll
withdraw 10 need Wait for a deposit now balance 3
Deposit 5 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 3 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 7 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 4 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 6 8signalAll
Deposit 1 9signalAll
withdraw 10 need Wait for a deposit now balance 9
Deposit 4 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 1 4signalAll
Deposit 3 7signalAll
withdraw 10 need Wait for a deposit now balance 7
Deposit 1 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 4 12signalAll
newDeposit.await() after:---------------------
Deposit 3 15signalAll
not await() withdraw amount:10 5
withdraw 10 need Wait for a deposit now balance 5
Deposit 3 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 9 17signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 7
Deposit 8 15signalAll
not await() withdraw amount:10 5
Deposit 7 12signalAll
Deposit 7 19signalAll
not await() withdraw amount:10 9
withdraw 10 need Wait for a deposit now balance 9
Deposit 2 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 7 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 0 8signalAll
newDeposit.await() after:---------------------
Deposit 4 12signalAll
not await() withdraw amount:10 2
withdraw 10 need Wait for a deposit now balance 2
Deposit 8 10signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 0
Deposit 5 5signalAll
Deposit 1 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 2 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 3 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 5 6signalAll
Deposit 7 13signalAll
not await() withdraw amount:10 3
withdraw 10 need Wait for a deposit now balance 3
Deposit 8 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 6 7signalAll
withdraw 10 need Wait for a deposit now balance 7
Deposit 0 7signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 7
Deposit 1 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 1 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 2 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 2 3signalAll
withdraw 10 need Wait for a deposit now balance 3
Deposit 0 3signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 3
Deposit 8 11signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 1
Deposit 7 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 8 16signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 6
Deposit 5 11signalAll
not await() withdraw amount:10 1
Deposit 7 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 3 11signalAll
newDeposit.await() after:---------------------
Deposit 9 20signalAll
not await() withdraw amount:10 10
Deposit 5 15signalAll
not await() withdraw amount:10 5
Deposit 3 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 5 13signalAll
newDeposit.await() after:---------------------
Deposit 9 22signalAll
not await() withdraw amount:10 12
Deposit 1 13signalAll
not await() withdraw amount:10 3
Deposit 7 10signalAll
not await() withdraw amount:10 0
Deposit 1 1signalAll
withdraw 10 need Wait for a deposit now balance 1
Deposit 5 6signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 6
Deposit 7 13signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 3
Deposit 3 6signalAll
withdraw 10 need Wait for a deposit now balance 6
Deposit 3 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 5 14signalAll
newDeposit.await() after:---------------------
Deposit 6 20signalAll
not await() withdraw amount:10 10
Deposit 4 14signalAll
not await() withdraw amount:10 4
withdraw 10 need Wait for a deposit now balance 4
Deposit 1 5signalAll
newDeposit.await() after:---------------------
Deposit 3 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 9 17signalAll
newDeposit.await() after:---------------------
Deposit 9 26signalAll
not await() withdraw amount:10 16
Deposit 3 19signalAll
not await() withdraw amount:10 9
Deposit 1 10signalAll
not await() withdraw amount:10 0
Deposit 1 1signalAll
withdraw 10 need Wait for a deposit now balance 1
Deposit 4 5signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 5
Deposit 4 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 5 14signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 4
Deposit 0 4signalAll
withdraw 10 need Wait for a deposit now balance 4
Deposit 2 6signalAll
newDeposit.await() after:---------------------
Deposit 2 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 9 17signalAll
newDeposit.await() after:---------------------
Deposit 3 20signalAll
not await() withdraw amount:10 10
Deposit 2 12signalAll
not await() withdraw amount:10 2
Deposit 5 7signalAll
withdraw 10 need Wait for a deposit now balance 7
Deposit 3 10signalAll
newDeposit.await() after:---------------------
Deposit 7 17signalAll
not await() withdraw amount:10 7
withdraw 10 need Wait for a deposit now balance 7
Deposit 1 8signalAll
newDeposit.await() after:---------------------
Deposit 2 10signalAll
not await() withdraw amount:10 0
withdraw 10 need Wait for a deposit now balance 0
Deposit 4 4signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 4
Deposit 8 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 0 2signalAll
withdraw 10 need Wait for a deposit now balance 2
Deposit 7 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 6 15signalAll
newDeposit.await() after:---------------------
Deposit 3 18signalAll
not await() withdraw amount:10 8
withdraw 10 need Wait for a deposit now balance 8
Deposit 1 9signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 9
Deposit 9 18signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 8
Deposit 9 17signalAll
Deposit 6 23signalAll
not await() withdraw amount:10 13
not await() withdraw amount:10 3
Deposit 5 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 0 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 4 12signalAll
newDeposit.await() after:---------------------
Deposit 6 18signalAll
not await() withdraw amount:10 8
withdraw 10 need Wait for a deposit now balance 8
Deposit 0 8signalAll
newDeposit.await() after:---------------------
withdraw 10 need Wait for a deposit now balance 8
Deposit 9 17signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 7
Deposit 3 10signalAll
not await() withdraw amount:10 0
Deposit 8 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 8 16signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 6
Deposit 7 13signalAll
not await() withdraw amount:10 3
Deposit 2 5signalAll
withdraw 10 need Wait for a deposit now balance 5
Deposit 9 14signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 4
Deposit 2 6signalAll
Deposit 9 15signalAll
not await() withdraw amount:10 5
withdraw 10 need Wait for a deposit now balance 5
Deposit 7 12signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 2
Deposit 8 10signalAll
not await() withdraw amount:10 0
Deposit 8 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 9 17signalAll
newDeposit.await() after:---------------------
not await() withdraw amount:10 7
Deposit 1 8signalAll
withdraw 10 need Wait for a deposit now balance 8
Deposit 4 12signalAll
newDeposit.await() after:---------------------