none
ステップ実行時に表示されるアイコンについて RRS feed

  • 質問

  • VisualStudio2015で開発しております。

    いつの頃からかブレイクポイントにヒットしてステップ実行している時に、ひもが上下に重なったようなアイコンが黄色の矢印アイコンの下に表示されるようになっていました。(画像ポストできなかったので微妙な説明ですみません…)

    このマークにはどのような意味があるのでしょうか?(なんとなくマルチスレッドがらみかなという気がしていますが)

    少し調べてみたのですが情報が見つからなかったので解説ページ等ありましたら、ご教示いただけますと幸いです。

    よろしくお願いいたします。

    2018年1月22日 7:27

回答

  • 画像ファイルのアップロードありがとうございます。

    このアイコンの表示方法が分かりました。私はこの機能を知らなかったのですが、この機能は現在のステップ(黄色い矢印アイコン)のスレッド ID を表示できる機能で、デバッグ実行中のコード横の黄色い矢印にマウスをかざすとのスレッド ID が表示されるようになります。

    デバッグ実行時、[デバッグ]ツールバーにボタンが表示されています(下記キャプチャーをご参照ください)。このボタンで機能の ON / OFF が切り替えられるようです。

    マルチスレッドのプログラムですとこの機能を ON にして現在のステップがどのスレッドで実行されているか表示できるので便利かもしれません。

    • 編集済み kenjinoteMVP 2018年1月24日 1:28
    • 回答としてマーク sgkz 2018年1月24日 2:17
    2018年1月24日 1:20

すべての返信

  • 上記のようなアイコンでしょうか?(マルチスレッドがらみかも?ということでしたので推測ですが・・・)

    こちらのアイコンは、ステップ実行した際に、前回のステップとは別のスレッド(またはプロセス)に変わった。ということを意味するようです。マルチスレッドではないプログラムのステップ実行ですと上から下に順次実行されますが、マルチスレッドのプログラムの場合はステップ実行して挙動を確認していくと、次のステップでは別の関数の中に実行が飛んだりすることがあります。そのときにこのアイコンが表示されるようです。

    全く別のアイコンでしたらすみません。

    参考サイト: 

    2018年1月22日 9:29
  • ご返信ありがとうございます!

    そのアイコンも確かに表示されているのですが(なのでマルチスレッド関連かなと思いました)、自分が質問したのはそれとは違うアイコンです。

    まだ画像投稿できるようにならないのですが、下記ページの中ほど「条件に一致する時(今回の場合は変数i(ループカウンタ)が99回目の時)にだけ、ブレークポイントがヒットします。」という部分の19行目で止まっている状態の表示が自分のものと同じだと思います。
    https://jyn.jp/visualstudio-breakpoint/

    このアイコンが表示されるプロジェクトと表示されないプロジェクトがあって、どういう違いがあるのかなと疑問に思っています。

    よろしくお願いいたします。

    2018年1月23日 2:17
  • リンク先の画像をみると、後ろが×のように見えます。
    このアイコンが表示されるプロジェクトとされないプロジェクトで、以下の項目を比較すると何かわかるかもしれません。
    ツール -> オプション -> デバッグ

    ★良い回答には質問者は回答済みマークを、閲覧者は投票を!

    2018年1月23日 4:56
    モデレータ
  • 矢印がかぶっていると×マークのように見えるのですが、矢印が外れると荒縄?みたいなアイコンなんですよね…

    (編集:解決後に画像投稿できるようになったので後のリファレンスのために画像アップしました)

    ↓こちらのものがブレイクポイントにヒットしてステップ実行中の状態、

    ↓こちらがF5を押して実行して矢印が外れた状態でキャプチャしたものです。

    デバッグ項目は比較してみます。もし何か分かったら投稿させていただきます。



    • 編集済み sgkz 2018年1月24日 2:29
    2018年1月23日 6:25
  • 画像ファイルのアップロードありがとうございます。

    このアイコンの表示方法が分かりました。私はこの機能を知らなかったのですが、この機能は現在のステップ(黄色い矢印アイコン)のスレッド ID を表示できる機能で、デバッグ実行中のコード横の黄色い矢印にマウスをかざすとのスレッド ID が表示されるようになります。

    デバッグ実行時、[デバッグ]ツールバーにボタンが表示されています(下記キャプチャーをご参照ください)。このボタンで機能の ON / OFF が切り替えられるようです。

    マルチスレッドのプログラムですとこの機能を ON にして現在のステップがどのスレッドで実行されているか表示できるので便利かもしれません。

    • 編集済み kenjinoteMVP 2018年1月24日 1:28
    • 回答としてマーク sgkz 2018年1月24日 2:17
    2018年1月24日 1:20
  • 以下から、VS2017 Image Library.zipをダウンロードし、Visual Studio Image Library 2017.pdfの202ページに載っていますね。
    説明としては「Thread」としか載っていませんが・・・。その他、スレッド絡みの類似のアイコンも載っています。

    ★良い回答には質問者は回答済みマークを、閲覧者は投票を!

    2018年1月24日 1:59
    モデレータ
  • おおおー!!!

    これで謎が解けました!ありがとうございます!いつの間にかそのアイコンをクリックしていたようです。

    スレッドだけにヒモで合っていたんですね。。画面中にヒントはあったのか…

    やってみると分かるのですが、この機能がONになっているとステップ実行がかなり遅くなってしまいます。

    最近ステップ遅いなーと思っててこのアイコンに気付いたので助かりました。

    ありがとうございました!

    2018年1月24日 2:24
  • おおこのようなものもダウンロードできるのですね。

    しかしVS2015だけ2.9GBっていったい何が含まれているんでしょう…

    使っているのが2015なのですがちょっと躊躇してしまいますね。

    情報ありがとうございました!

    2018年1月24日 2:26
  • >しかしVS2015だけ2.9GBっていったい何が含まれているんでしょう…

    もうほんの少しだけ詳しい説明や、Iconのあるフォルダが載っています。その分、ページ数が多くなっているようです。


    ★良い回答には質問者は回答済みマークを、閲覧者は投票を!

    2018年1月24日 2:28
    モデレータ