スレッドの使い方とスレッドセーフなプログラムを基本からわかりやすく解説!【Java応用講座2章 総集編】

Поділитися
Вставка
  • Опубліковано 14 жов 2024

КОМЕНТАРІ • 14

  • @のりぱん-w4d
    @のりぱん-w4d 6 місяців тому +1

    1:04:10
    もしあなたの周りに仲間がいなくても、僕があなたを応援しています!
    っていう言葉をみて凄く嬉しい気持ちになりました!頑張ります!

    • @SekaChan
      @SekaChan  6 місяців тому

      それは本心からのメッセージですね。
      みんな、頑張って勉強しようっていう気持ちを持てているだけでも凄いことですから。
      一緒に頑張っていきましょう!

  • @ズック-t2x
    @ズック-t2x 9 місяців тому +1

    お疲れ様です。
    先日、本チャンネルの視聴と黒本での学習を経て、
    Java Silverに95%で合格できました。
    為になる投稿をありがとうございます。
    試験のほうは重箱の隅をつつくような仕様の確認が求められ、
    難しかったのですが試される感覚が楽しかったです。
    特にoracleさんは菱形継承問題が大好きなようで、かなり苦しめられました。
    (他にもコンストラクタでちゃっかり初期化されていないfinalなフィールドとか…)
    個人的な感想になりましたがお礼をお伝えしたくコメントいたしました。
    ありがとうございました。

    • @SekaChan
      @SekaChan  9 місяців тому +1

      Java Silver合格おめでとうございます🎉🎉
      しかも95%なんて、本当にスゴイ!!
      あのひっかけ満載の試験でそれだけの高得点を取れたなんて、かなり対策を練られたんでしょうね。
      その「試される感覚が楽しい」っていう感じは、僕も同じだったのでよく分かります。
      そこまで理解できていればもうJavaを楽しめるレベルだと思うので、これからもドンドン使いこなしていってください!

  • @さんかめはめ
    @さんかめはめ 9 місяців тому +3

    最近忙しくて授業に追いつけてないので、昨日あげてくださった動画とこの動画で復習頑張りまする
    ちなみに、もう次の講座に向けて動画撮っておられるのですか?笑

    • @SekaChan
      @SekaChan  9 місяців тому +1

      さんかめはめさん、コメントありがとうございます!
      忙しいときは無理をしないで、いつか時間ができたときにじっくり見てもらえたらと思います。
      次の講座は、カリキュラムはできてますが撮影はこれからですね!
      その前に出したい動画があって、その制作に普段の10倍以上の時間がかかっています😂

    • @さんかめはめ
      @さんかめはめ 9 місяців тому +2

      @@SekaChan ありがとうございます。
      おお〜そうなんですね笑
      楽しみにしています😤

  • @HanakoHanakoYamada
    @HanakoHanakoYamada 9 місяців тому +1

    Goldの勉強をしていてスレッドのところがいまいちわからなくてなんかモヤモヤしていましたが、丁寧な説明でやっとわかってきました。ありがとうございます。
    ですが、スレッドの同期制御からわからなくなってしまったところがありまして、質問させてください。
    useATMメソッド全体に、Synchronizedがついているので、メソッド内の処理全体が終わるまで、他のスレッドが待たされると思っていたのですが、違うのでしょうか?
    メソッド内のwhileの中にあるwait()で自分がずっと待ってしまうと、このメソッドにsynchronizedがかかってるので、他のスレッドもロックフラグが取れず待たされたままで、自分もwaitかかったままで、
    ロック状態で進まなくなるのでは?と思ってしまいました。notify()もメソッドの最後に書かれているのでwaitが解除されて処理が進まないと、notifyまでいかないので、notifyが書かれてる意図もいまいちわかりませんでした。
    実際に動画を見ながら自分でも書いてみたら動いたので、私の解釈のどこが間違っているのか教えていただきたいです。
    あと、可能でしたら、番外編とかで、ロックについて(デッドロック、ライブロック、スタベーション)の解説をしていただけると嬉しいです。

    • @SekaChan
      @SekaChan  9 місяців тому +1

      HanakoHanako Yamadaさん、コメントありがとうございました。
      wait()メソッドを実行すると、自身のスレッドを待ち状態にするとともにロックフラグも解放します。
      なので、ロック状態で処理が進まなくなる、ということは起こらないですね😄
      Goldレベルだとこういう内部的な動きを問われることもあるので、気になったときはAPIリファレンスを確認しながら勉強することをオススメします。
      例えば、wait()メソッドの詳細はこちらにありますね。
      docs.oracle.com/javase/jp/17/docs/api/java.base/java/lang/Object.html
      ロックの解説についてのリクエストも受け取りました!
      同じようなご意見が集まったら動画化を検討してみますね。

  • @faj4651
    @faj4651 4 місяці тому +1

    GOLDで一番苦戦してるのがスレッドなのでありがたいです...

    • @SekaChan
      @SekaChan  4 місяці тому

      スレッドは裏側の動きが目に見えないので、たしかに苦戦しやすいですよね。
      GOLD合格できるように応援してます!

    • @faj4651
      @faj4651 2 місяці тому

      @@SekaChanありがとうございます!おかげさまで2ヶ月で得点率9割で合格できました!

  • @tatsuta_age-g8l
    @tatsuta_age-g8l 9 місяців тому +1

    いつも勉強になる内容をありがとうございます!
    動画について希望があります。
    以下の内容でのwebアプリ開発をしたいのですが環境構築に詰まっています。
    (具体的には、WSL2の構築・ホストOSからのVSCode接続は完了、WSL2上でのservlet等の環境構築に難航)
    ・WSL2
    ・java(Servlet jsp)
    ・ホストOS(Windows11)で開いたVSCodeでコーディング
    ・可能であればDocker使用
    いつかこのような条件での「環境構築~webアプリ開発」の内容をリリースしていただけるとより実践的で嬉しいです!
    1視聴者の意見としてぜひよろしくお願いします!

    • @SekaChan
      @SekaChan  9 місяців тому

      tatsuta_ageさん、コメントありがとうございました!
      動画のリクエストもありがとうございます。同じような要望が集まったら、動画化を検討してみますね😄
      環境構築ってトラブルがつきものなので、うまく動くまですごく大変ですよね。
      僕もこれまでいろいろ苦労してきたので気持ちがよく分かります。
      ただ、そういうときが一番スキルアップできるタイミングでもあるので、ぜひいろいろと調べながら頑張ってみてください!