alphaのjava備忘録

alphaが勉強したことを書いていくブログ

Thread

スレッドセーフでないコードを書くには

昨日書いたソースをいじっていたら偶然にもスレッドセーフでない(簡単な)ソースコードが生まれたので記録しておく。ネットでスレッドセーフって調べると上級者向けのソースコードばかりヒットするからこういう簡単なのがあってもいいよね。。。 あるコード…

Threadの配列を作るには

Threadを大量に作成するにはどうしたらいいだろう?今まではスレッドを作成するごとにインスタンスをnewしてきた。この方法だと10個のスレッドを使用する場合、10回newを書く必要がある。変数も10個用意してstart()メソッドも10回書く必要がある。 class Thr…

スレッドセーフでないコードで異常を起こすには

ここのところThreadを使用する方法について勉強しててイマイチ理解できなかったのが「スレッドセーフ」という言葉。 あるコードがスレッドセーフであるという場合、そのコードを複数のスレッドが同時並行的に実行しても問題が発生しないことを意味する。 特…

MainクラスでRunnableインターフェイスを実装するには

短記事。先日書いた記事のRunnable版。タイトルの通りRunnableインターフェイスをmain()メソッドのあるクラスに実装してスレッドを生成できるか試したい。同じような記事だけどネタ切れではない。まだ勉強してないこと沢山あるしね。実践したソースコードは…

implementsを使ってThreadを実装するには

前々回の記事では、Javaでのスレッドの実装方法は2種類あるという話だった。 Javaでスレッドを使用する方法には ・extendsを使う ・implementsを使う の2種類がある。今回は簡単そうなExtendsの方を実践してみる。 今回はまだ触れてないimplementsを使う方法…

MainクラスでThreadを継承するには

昨日の続き。短記事。昨日の記事ではThreadクラスを継承するクラスとメインメソッドがあるクラスは別々に分けていたけど、一緒に出来るのでは?と思ったので試してみた。結論、出来た。 やり方としては (1) main()メソッドのあるクラスでThreadクラスを継承(…

スレッド(Thread)を使うには

Javaには並列処理を行う仕組み(スレッド)について学ぶ。もののネットによると、スレッドを活用することで並列処理が可能になり多量の同一処理が早く行えたり、別個の処理を同時に動かしたり、処理実行中に入力を受け付けたりできるらしい。今一つよく分か…