fork(1) download
  1.  
  2. import java.util.*;
  3. import java.lang.*;
  4. import java.io.*;
  5.  
  6. class Ideone
  7. {
  8.  
  9. public static void main(String[] args) {
  10.  
  11. final ActionInterrupt interromper = new ActionInterrupt();
  12. final ActionFlag flag = new ActionFlag();
  13. flag.start();
  14. interromper.start();
  15.  
  16. try {
  17.  
  18. int p = 0;
  19. while(!interromper.isInterrupted()){
  20. Thread.sleep(33L);
  21. if(p == 5){
  22. interromper.interrupt();
  23. flag.setStop();
  24. }
  25. p++;
  26. System.out.println("MainThread "+p);
  27. if(p==199){
  28. break;
  29. }
  30. }
  31. } catch (InterruptedException e) {
  32. e.printStackTrace();
  33. }
  34. }
  35.  
  36.  
  37.  
  38. static class ActionInterrupt extends Thread{
  39. @Override
  40. public void run() {
  41. int pt = 0;
  42. // try {
  43. while(pt != 55){
  44. try {
  45. Thread.sleep(10L);
  46. } catch (InterruptedException e) {
  47. // TODO Auto-generated catch block
  48. e.printStackTrace();
  49. }
  50. System.out.println("ActionInterrupt {"+pt+"}");
  51. pt++;
  52. }
  53. // } catch (InterruptedException e) {
  54. // e.printStackTrace();
  55. // }
  56. }
  57. }
  58. static class ActionFlag extends Thread{
  59. private boolean running = true;
  60.  
  61. public void setStop() {
  62. running = false;
  63. }
  64.  
  65. @Override
  66. public void run() {
  67. int pt = 0;
  68. while(running){
  69. try {
  70. Thread.sleep(10L);
  71. } catch (InterruptedException e) {
  72. e.printStackTrace();
  73. }
  74. System.out.println("ActionFlag["+pt+"]");
  75. pt++;
  76. }
  77. }
  78. }
  79.  
  80. }
Success #stdin #stdout #stderr 0.11s 711168KB
stdin
Standard input is empty
stdout
ActionFlag[0]
ActionInterrupt {0}
ActionInterrupt {1}
ActionFlag[1]
ActionInterrupt {2}
ActionFlag[2]
MainThread 1
ActionFlag[3]
ActionInterrupt {3}
ActionInterrupt {4}
ActionFlag[4]
ActionFlag[5]
ActionInterrupt {5}
MainThread 2
ActionFlag[6]
ActionInterrupt {6}
ActionInterrupt {7}
ActionFlag[7]
ActionFlag[8]
ActionInterrupt {8}
MainThread 3
ActionInterrupt {9}
ActionFlag[9]
ActionFlag[10]
ActionInterrupt {10}
ActionInterrupt {11}
ActionFlag[11]
MainThread 4
ActionFlag[12]
ActionInterrupt {12}
ActionInterrupt {13}
ActionFlag[13]
ActionFlag[14]
ActionInterrupt {14}
ActionFlag[15]
ActionInterrupt {15}
MainThread 5
ActionInterrupt {16}
ActionFlag[16]
ActionInterrupt {17}
ActionFlag[17]
ActionFlag[18]
ActionInterrupt {18}
MainThread 6
ActionInterrupt {19}
ActionFlag[19]
ActionInterrupt {20}
ActionInterrupt {21}
ActionInterrupt {22}
MainThread 7
ActionInterrupt {23}
ActionInterrupt {24}
ActionInterrupt {25}
MainThread 8
ActionInterrupt {26}
ActionInterrupt {27}
ActionInterrupt {28}
MainThread 9
ActionInterrupt {29}
ActionInterrupt {30}
ActionInterrupt {31}
MainThread 10
ActionInterrupt {32}
ActionInterrupt {33}
ActionInterrupt {34}
ActionInterrupt {35}
MainThread 11
ActionInterrupt {36}
ActionInterrupt {37}
ActionInterrupt {38}
MainThread 12
ActionInterrupt {39}
ActionInterrupt {40}
ActionInterrupt {41}
MainThread 13
ActionInterrupt {42}
ActionInterrupt {43}
ActionInterrupt {44}
MainThread 14
ActionInterrupt {45}
ActionInterrupt {46}
ActionInterrupt {47}
MainThread 15
ActionInterrupt {48}
ActionInterrupt {49}
ActionInterrupt {50}
ActionInterrupt {51}
MainThread 16
ActionInterrupt {52}
ActionInterrupt {53}
ActionInterrupt {54}
MainThread 17
MainThread 18
MainThread 19
MainThread 20
MainThread 21
MainThread 22
MainThread 23
MainThread 24
MainThread 25
MainThread 26
MainThread 27
MainThread 28
MainThread 29
MainThread 30
MainThread 31
MainThread 32
MainThread 33
MainThread 34
MainThread 35
MainThread 36
MainThread 37
MainThread 38
MainThread 39
MainThread 40
MainThread 41
MainThread 42
MainThread 43
MainThread 44
MainThread 45
MainThread 46
MainThread 47
MainThread 48
MainThread 49
MainThread 50
MainThread 51
MainThread 52
MainThread 53
MainThread 54
MainThread 55
MainThread 56
MainThread 57
MainThread 58
MainThread 59
MainThread 60
MainThread 61
MainThread 62
MainThread 63
MainThread 64
MainThread 65
MainThread 66
MainThread 67
MainThread 68
MainThread 69
MainThread 70
MainThread 71
MainThread 72
MainThread 73
MainThread 74
MainThread 75
MainThread 76
MainThread 77
MainThread 78
MainThread 79
MainThread 80
MainThread 81
MainThread 82
MainThread 83
MainThread 84
MainThread 85
MainThread 86
MainThread 87
MainThread 88
MainThread 89
MainThread 90
MainThread 91
MainThread 92
MainThread 93
MainThread 94
MainThread 95
MainThread 96
MainThread 97
MainThread 98
MainThread 99
MainThread 100
MainThread 101
MainThread 102
MainThread 103
MainThread 104
MainThread 105
MainThread 106
MainThread 107
MainThread 108
MainThread 109
MainThread 110
MainThread 111
MainThread 112
MainThread 113
MainThread 114
MainThread 115
MainThread 116
MainThread 117
MainThread 118
MainThread 119
MainThread 120
MainThread 121
MainThread 122
MainThread 123
MainThread 124
MainThread 125
MainThread 126
MainThread 127
MainThread 128
MainThread 129
MainThread 130
MainThread 131
MainThread 132
MainThread 133
MainThread 134
MainThread 135
MainThread 136
MainThread 137
MainThread 138
MainThread 139
MainThread 140
MainThread 141
MainThread 142
MainThread 143
MainThread 144
MainThread 145
MainThread 146
MainThread 147
MainThread 148
MainThread 149
MainThread 150
MainThread 151
MainThread 152
MainThread 153
MainThread 154
MainThread 155
MainThread 156
MainThread 157
MainThread 158
MainThread 159
MainThread 160
MainThread 161
MainThread 162
MainThread 163
MainThread 164
MainThread 165
MainThread 166
MainThread 167
MainThread 168
MainThread 169
MainThread 170
MainThread 171
MainThread 172
MainThread 173
MainThread 174
MainThread 175
MainThread 176
MainThread 177
MainThread 178
MainThread 179
MainThread 180
MainThread 181
MainThread 182
MainThread 183
MainThread 184
MainThread 185
MainThread 186
MainThread 187
MainThread 188
MainThread 189
MainThread 190
MainThread 191
MainThread 192
MainThread 193
MainThread 194
MainThread 195
MainThread 196
MainThread 197
MainThread 198
MainThread 199
stderr
java.lang.InterruptedException: sleep interrupted
	at java.lang.Thread.sleep(Native Method)
	at Ideone$ActionInterrupt.run(Main.java:45)