JAVAプロセスとスレッド-day 01
3240 ワード
A
プロセス
スレッド
スレッドとプロセスの違い
スレッド使用の場合
スレッドの作成方法
どうじげんり
Runnableを使用したスレッドの作成と起動
スレッド共通API
スレッド優先度
スレッド同期
つうしん
プロセス
( )。
; 。
スレッド
(thread);
。 , 。
, ,
, , , 。
スレッドとプロセスの違い
。
, 。
, , 。
スレッド使用の場合
。 。 。
スレッドの作成方法
Thread , run ; start()
; run 。
どうじげんり
“ ” 。 ;OS (
), , CPU , 。
, ; , 。
Runnableを使用したスレッドの作成と起動
Runnable run , Runnble 。
Runnable ; java ,
Runnable , ( )
。
スレッド共通API
// ID
long id=th.getId();
System.out.println(id);
//
String name=th.getName();
System.out.println(name);
th.setPriority(2);//
int a=th.getPriority();// , 5
System.out.println(a);
スレッド優先度
, ,
。
10 , 1-10, 1 ,10 。 3 、
:
---Thread.MIN_PRIORITY,
---Thread.MAX_PRIORITY,
---Thread.NORM_PRIORITY,
Thread.sleep(); , , ,
Runnable , 。
static void yield(): CPU Runnable , 。
void join(): 。 InterruptException。
; : ,
。
--- :void setDeamon(boolean b);GC 。
スレッド同期
“ ”。
:
-- ;
-- 。
, 。
-- : , 。
-- : , 。
synchronized java
つうしん
Socket: , IP , ; Internet
, 。 socket,
, 。
“ ” 。Socket ServerSocket
java.net 。ServerSocket ,Socket ,
Socket 。 。
--int getLocalPort();
--InetAddress getLocalAddress(): Socket 。
-- InetAddress :String getCanonicalHostName();
--String getHostAddress(): IP ( )
--int getPort();
--InetAddress getInetAddress(); (Socket)
-- Socket :
InputStream getInputStream(): ;
OutputStream getOutputStream(): 。