ホームページ > バックエンド開発 > C++ > 新しいプロセスを作成せずに、単一の .NET プロセスで複数のコマンドを実行する方法

新しいプロセスを作成せずに、単一の .NET プロセスで複数のコマンドを実行する方法

DDD
リリース: 2025-01-04 02:45:40
オリジナル
873 人が閲覧しました

How to Execute Multiple Commands in a Single .NET Process Without Creating New Processes?

.NET を使用して新しいプロセスを作成せずに複数のコマンドを実行する

コマンドごとに新しいプロセスを作成せずに複数のコマンドを効率的に実行するには、次のようにします。標準入力をリダイレクトし、StreamWriter を利用して標準入力に書き込みます。コードを変更する方法は次のとおりです:

using System.Diagnostics;

namespace ExecuteMultipleCommands
{
    class Program
    {
        static void Main(string[] args)
        {
            Process p = new Process();
            ProcessStartInfo info = new ProcessStartInfo();
            info.FileName = "cmd.exe";
            info.RedirectStandardInput = true;
            info.UseShellExecute = false;

            p.StartInfo = info;
            p.Start();

            using (StreamWriter sw = p.StandardInput)
            {
                if (sw.BaseStream.CanWrite)
                {
                    sw.WriteLine("mysql --user=root --password=sa casemanager");
                    sw.WriteLine("your-query-here");
                    sw.WriteLine("exit");
                }
            }
        }
    }
}
ログイン後にコピー

この更新されたコードは DOS コマンド シェルを起動し、「mysql --user=root --password=sa casemanager」と入力して MySQL コマンド シェルに切り替えます。目的の MySQL クエリを実行し、最後に「exit」と入力して MySQL シェルを終了します。

StreamWriter を使用して、次の標準入力に書き込みます。シェル プロセスを使用すると、単一プロセス内で複数のコマンドを効果的に実行できるため、プロセスの実行が合理化され、全体的なパフォーマンスが向上します。

以上が新しいプロセスを作成せずに、単一の .NET プロセスで複数のコマンドを実行する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート