{"rsdb":{"rid":"158661","subhead":"","postdate":"0","aid":"118933","fid":"76","uid":"1","topic":"1","content":"
<\/p> \n
\u4ee5\u4e0b\u5b9e\u4f8b\u6f14\u793a\u4e86\u5982\u4f55\u83b7\u53d6\u7ebf\u7a0b\u7684\u72b6\u6001\uff1a<\/p> \n
\r\n\/*\r\n author by w3cschool.cc\r\n Main.java<\/a>\r\n *\/<\/span>\r\n\r\n<\/span>class<\/span> <\/span>MyThread<\/span> <\/span>extends<\/span> <\/span>Thread<\/span>{<\/span>\r\n <\/span>boolean<\/span> waiting<\/span>=<\/span> <\/span>true<\/span>;<\/span>\r\n <\/span>boolean<\/span> ready<\/span>=<\/span> <\/span>false<\/span>;<\/span>\r\n <\/span>MyThread<\/span>()<\/span> <\/span>{<\/span>\r\n <\/span>}<\/span>\r\n <\/span>public<\/span> <\/span>void<\/span> run<\/span>()<\/span> <\/span>{<\/span>\r\n <\/span>String<\/span> thrdName <\/span>=<\/span> <\/span>Thread<\/span>.<\/span>currentThread<\/span>().<\/span>getName<\/span>();<\/span>\r\n <\/span>System<\/span>.<\/span>out<\/span>.<\/span>println<\/span>(<\/span>thrdName <\/span>+<\/span> <\/span>" \u542f\u52a8"<\/span>);<\/span>\r\n <\/span>while<\/span>(<\/span>waiting<\/span>)<\/span>\r\n <\/span>System<\/span>.<\/span>out<\/span>.<\/span>println<\/span>(<\/span>"\u7b49\u5f85\uff1a"<\/span>+<\/span>waiting<\/span>);<\/span>\r\n <\/span>System<\/span>.<\/span>out<\/span>.<\/span>println<\/span>(<\/span>"\u7b49\u5f85..."<\/span>);<\/span>\r\n startWait<\/span>();<\/span>\r\n <\/span>try<\/span> <\/span>{<\/span>\r\n <\/span>Thread<\/span>.<\/span>sleep<\/span>(<\/span>1000<\/span>);<\/span>\r\n <\/span>}<\/span>\r\n <\/span>catch<\/span>(<\/span>Exception<\/span> exc<\/span>)<\/span> <\/span>{<\/span>\r\n <\/span>System<\/span>.<\/span>out<\/span>.<\/span>println<\/span>(<\/span>thrdName <\/span>+<\/span> <\/span>" \u4e2d\u65ad\u3002"<\/span>);<\/span>\r\n <\/span>}<\/span>\r\n <\/span>System<\/span>.<\/span>out<\/span>.<\/span>println<\/span>(<\/span>thrdName <\/span>+<\/span> <\/span>" \u7ed3\u675f\u3002"<\/span>);<\/span>\r\n <\/span>}<\/span>\r\n <\/span>synchronized<\/span> <\/span>void<\/span> startWait<\/span>()<\/span> <\/span>{<\/span>\r\n <\/span>try<\/span> <\/span>{<\/span>\r\n <\/span>while<\/span>(!<\/span>ready<\/span>)<\/span> wait<\/span>();<\/span>\r\n <\/span>}<\/span>\r\n <\/span>catch<\/span>(<\/span>InterruptedException<\/span> exc<\/span>)<\/span> <\/span>{<\/span>\r\n <\/span>System<\/span>.<\/span>out<\/span>.<\/span>println<\/span>(<\/span>"wait() \u4e2d\u65ad\u3002"<\/span>);<\/span>\r\n <\/span>}<\/span>\r\n <\/span>}<\/span>\r\n <\/span>synchronized<\/span> <\/span>void<\/span> notice<\/span>()<\/span> <\/span>{<\/span>\r\n ready <\/span>=<\/span> <\/span>true<\/span>;<\/span>\r\n notify<\/span>();<\/span>\r\n <\/span>}<\/span>\r\n<\/span>}<\/span>\r\n<\/span>public<\/span> <\/span>class<\/span> <\/span>Main<\/span> <\/span>{<\/span>\r\n <\/span>public<\/span> <\/span>static<\/span> <\/span>void<\/span> main<\/span>(<\/span>String<\/span> args<\/span>[])<\/span> \r\n <\/span>throws<\/span> <\/span>Exception<\/span>{<\/span>\r\n <\/span>MyThread<\/span> thrd <\/span>=<\/span> <\/span>new<\/span> <\/span>MyThread<\/span>();<\/span>\r\n thrd<\/span>.<\/span>setName<\/span>(<\/span>"MyThread #1"<\/span>);<\/span>\r\n showThreadStatus<\/span>(<\/span>thrd<\/span>);<\/span>\r\n thrd<\/span>.<\/span>start<\/span>();<\/span>