1 22 package org.jboss.test.tm.test; 23 24 import javax.transaction.Transaction ; 25 26 32 public class SimpleUncontendedNoLockTransactionLocalStressTestCase extends AbstractTransactionLocalStressTest 33 { 34 public void testSimpleTransactionLocalStressTestcase() throws Throwable 35 { 36 SimpleTransactionLocalRunnable[] runnables = new SimpleTransactionLocalRunnable[getThreadCount()]; 37 for (int i = 0; i < runnables.length; ++i) 38 runnables[i] = new SimpleTransactionLocalRunnable(); 39 40 runConcurrentTest(runnables, null); 41 } 42 43 public class SimpleTransactionLocalRunnable extends ConcurrentRunnable 44 { 45 Transaction tx; 46 47 public void doStart() 48 { 49 try 50 { 51 tm.setTransactionTimeout(0); 52 tm.begin(); 53 tx = tm.getTransaction(); 54 } 55 catch (Throwable t) 56 { 57 failure = t; 58 } 59 } 60 public void doEnd() 61 { 62 try 63 { 64 tm.commit(); 65 } 66 catch (Throwable t) 67 { 68 failure = t; 69 } 70 } 71 72 public void doRun() 73 { 74 try 75 { 76 local.set(this); 77 local.get(); 78 } 79 catch (Throwable t) 80 { 81 failure = t; 82 } 83 } 84 } 85 86 public SimpleUncontendedNoLockTransactionLocalStressTestCase(String name) 87 { 88 super(name); 89 } 90 } 91 | Popular Tags |