??????????????У????Ч??????????????????????Ч????????????????????????????????????????????????????????????????Ч????????I/O???????????????????????????????JUnit??@Before????@BeforeClass?????и???I/O???????????д???????д???????????????????????????????????Щ????????????????????????????????????????????????????????????????Ч???????????????

?????????????????????????????????????????????????????????????????????????excel?У??????excel?????????????????漰??δ???I/O?????????I/O?????????????????????????????????????????????????????????????????У??????????????У????????????????????????????????

??????????????????????????????????????????????????Ч?????δ???????У?????????????е????????????У?鷥??????????????????????????δ????????????????

??????????????????£?

????Java????

1.import java.util.concurrent.ExecutionException;
2.import java.util.concurrent.TimeoutException;
3.
4.import org.junit.Before;
5.import org.junit.Test;
6.
7.
8.public class AsyncSample {
9.    
10.    private long orderId;
11.    
12.    @Before
13.    public void createOrder() {
14.        //???????????
15.        orderId = 0L; //??????????????
16.    }
17.    
18.    @Test
19.    public void test() throws InterruptedException?? ExecutionException?? TimeoutException {
20.        //?????????????
21.        //????????????????????
22.        //??????????????????λ??????λ??
23.        //???????????
24.        //??????????????
25.    }
26.
27.}

????????????У???????????@Before??createOrder?????У???????????????????

????Java????

1.import java.util.concurrent.Callable;
2.import java.util.concurrent.ExecutionException;
3.import java.util.concurrent.ExecutorService;
4.import java.util.concurrent.Executors;
5.import java.util.concurrent.Future;
6.import java.util.concurrent.TimeUnit;
7.import java.util.concurrent.TimeoutException;
8.
9.import org.junit.AfterClass;
10.import org.junit.Before;
11.import org.junit.Test;
12.
13.
14.public class AsyncSample {
15.    
16.    private static final ExecutorService single = Executors.newSingleThreadExecutor();
17.    
18.    private Future<Long> future;
19.    
20.    @Before
21.    public void createOrder() {
22.        future = single.submit(new Callable<Long>() {
23.
24.            @Override
25.            public Long call() throws Exception {
26.                long orderId = 0L;
27.                //???????????
28.                return orderId; //???????ID
29.            }
30.        });
31.    }
32.    
33.    @AfterClass
34.    public static void shutdown() {
35.        single.shutdownNow();
36.    }
37.    
38.    @Test
39.    public void test() throws InterruptedException?? ExecutionException?? TimeoutException {
40.        //?????????????
41.        //????????????????????
42.        long orderId = future.get(10?? TimeUnit.SECONDS); //?????????????????л????????
43.        //?????????????????λ??????λ??
44.        //?????壺????
45.        //??????????????
46.    }
47.
48.}

??????????????????????????д????????????????????????????????????????????????????????????????????????????£????????????????????У???????????????????????????????????????????????????????衣

?????????????????????????????????????????????????????????????????????????????????????????????Ч????????????????

?????????????????????????Щ??????????????á???????????????????????????????????????y???????????????????