SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

CodeZineニュース

Microsoft、Visual Studio Code用PowerShell拡張機能の更新バージョンをプレビュー

  • このエントリーをはてなブックマークに追加

  • このエントリーをはてなブックマークに追加

 米Microsoftは、Visual Studio Code用のPowerShell拡張機能の更新バージョンのプレビューを、Visual Studio Codeマーケットプレイスで11月9日(現地時間)に公開した。

 Visual Studio Code用のPowerShell拡張機能の更新バージョンは、PowerShellエディタサービスのコアPowerShellエンジンの完全なオーバーホールであり、より信頼性が高く、安定したユーザーエクスペリエンスの提供を目的としている。

 従来、PowerShell拡張機能によって提供される統合コンソールは、共有メイン実行スペースにスレッドプールタスクを設定することで実行され、LSP(Language Server Protocol)サービスはPowerShellアイドルイベントで実行されており、オーバーヘッド、スレッドの問題が発生し、同期のシングルスレッドランタイムとしてのPowerShellと非同期のマルチスレッドサービスとしての言語サーバ間の非対称性を回避すべく、複雑な実装となっていた。

 更新バージョンでは、PowerShellエディタサービスがJavaScriptのイベントループと同様のリクエストを処理可能な、独自の専用パイプラインスレッドを維持しており、正しいスレッドですべてを同期的に実行できるようになっている。このような実装によってクラス全体での競合状態が防止され、より信頼性が高くバグのないコードとなる。また、PowerShellパイプラインのオーバーヘッドなしに、スレッドからPowerShell APIとC#で記述されたコードを直接呼び出せるようになっている。

 こういった変更によって、LSP要求の処理方法、統合コンソールの動作方法、PSReadLineの統合方法、デバッグの実装方法、リモート処理の方法、PowerShellエディタサービスの他の機能のロングテールが見直され、6000行のコードが追加される一方で12000行が削除され、より保守しやすく、効率的で、拡張バックエンドが理解しやすくなった。

関連リンク

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
この記事の著者

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/15163 2021/11/11 08:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング