diff options
Diffstat (limited to 'Master/Reference Architectures and Patterns/hjp5/examples/ThreadedPrimeNumberTools.java')
| -rw-r--r-- | Master/Reference Architectures and Patterns/hjp5/examples/ThreadedPrimeNumberTools.java | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/Master/Reference Architectures and Patterns/hjp5/examples/ThreadedPrimeNumberTools.java b/Master/Reference Architectures and Patterns/hjp5/examples/ThreadedPrimeNumberTools.java new file mode 100644 index 0000000..b162918 --- /dev/null +++ b/Master/Reference Architectures and Patterns/hjp5/examples/ThreadedPrimeNumberTools.java @@ -0,0 +1,37 @@ +/* ThreadedPrimeNumberTools.java */
+
+public class ThreadedPrimeNumberTools
+extends PrimeNumberTools
+implements Runnable
+{
+ private int arg;
+ private int func;
+
+ public void printPrimeFactors(int num)
+ {
+ execAsynchron(1,num);
+ }
+
+ public void printPrime(int cnt)
+ {
+ execAsynchron(2,cnt);
+ }
+
+ public void run()
+ {
+ if (func == 1) {
+ super.printPrimeFactors(arg);
+ } else if (func == 2) {
+ int result = super.getPrime(arg);
+ System.out.println("prime number #"+arg+" is: "+result);
+ }
+ }
+
+ private void execAsynchron(int func, int arg)
+ {
+ Thread t = new Thread(this);
+ this.func = func;
+ this.arg = arg;
+ t.start();
+ }
+}
\ No newline at end of file |
