blob: b26b48ea148e13f11c14f9056025161e75d80e27 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
|
// ============================================================================
//
// = PACKAGE
// tests.ASX
//
// = FILENAME
// TaskTest.java
//
// = AUTHOR
// Prashant Jain
//
// ============================================================================
package tests.ASX;
import java.io.*;
import JACE.OS.*;
import JACE.ASX.*;
import JACE.Reactor.*;
public class TaskTest extends Task
{
int nThreads_;
int nIterations_;
public TaskTest (int nThreads, int nIterations)
{
this.nIterations_ = nIterations;
this.nThreads_ = nThreads;
if (this.activate (0, nThreads, true) == -1)
ACE.ERROR ("activate failed");
}
public int open (Object obj)
{
return 0;
}
public int close (long flags)
{
return 0;
}
public int put (MessageBlock mb, TimeValue tv)
{
return 0;
}
public int handleTimeout (TimeValue tv, Object obj)
{
return 0;
}
public int svc ()
{
for (int i = 1; i <= this.nIterations_; i++)
{
ACE.DEBUG (Thread.currentThread ().toString () + " in iteration " + i);
// Allow other threads to run
Thread.yield ();
}
return 0;
}
public static void main (String args[])
{
int nThreads = 1;
int nIterations = 1;
try
{
if (args.length == 2)
{
nThreads = Integer.parseInt (args[0]);
nIterations = Integer.parseInt (args[1]);
}
else if (args.length == 1)
{
nThreads = Integer.parseInt (args[0]);
}
}
catch (NumberFormatException e)
{
ACE.ERROR ("Illegal argument.");
}
TaskTest tt = new TaskTest (nThreads, nIterations);
}
}
|