16fcea8ba99efddcd01913b5c0250df3d333fdc4
[IRC.git] / Robust / Transactions / tuplesoup / test / ParallelThread.java
1 /*
2  * Copyright (c) 2007, Solido Systems
3  * All rights reserved.
4  *
5  * Redistribution and use in source and binary forms, with or without
6  * modification, are permitted provided that the following conditions are met:
7  *
8  * Redistributions of source code must retain the above copyright notice, this
9  * list of conditions and the following disclaimer.
10  *
11  * Redistributions in binary form must reproduce the above copyright notice,
12  * this list of conditions and the following disclaimer in the documentation
13  * and/or other materials provided with the distribution.
14  *
15  * Neither the name of Solido Systems nor the names of its contributors may be
16  * used to endorse or promote products derived from this software without
17  * specific prior written permission.
18  *
19  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
20  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
23  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29  * POSSIBILITY OF SUCH DAMAGE.
30  */
31  
32  package com.solidosystems.tuplesoup.test;
33  
34  import com.solidosystems.tuplesoup.core.*;
35
36
37
38 public class ParallelThread implements Runnable{
39     String id;
40     int records;
41     ParallelPerformanceTest app;
42     Table table;
43     
44     public ParallelThread(ParallelPerformanceTest app,Table table,String id,int records){
45         this.id=id;
46         this.records=records;
47         this.app=app;
48         this.table=table;
49     }
50     
51     public void run(){
52         try{
53             long time;
54           time=app.benchmarkLargeWrite(table,records,id);
55       //    synchronized(app){
56       /////          app.writetime+=time;
57         //   }
58          /*/   time=app.benchmarkLargeRead(table,records,id);
59             synchronized(app){
60                 app.readtime+=time;
61             }*/
62            time=app.benchmarkLargeRandomRead(table,records,id);
63           // synchronized(app){
64          //       app.randomtime+=time;
65          //   }
66         }catch(Exception e){
67             e.printStackTrace();
68         }
69     }
70 }