第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 ProcessExecution 按順序啟動 2 個應(yīng)用程序

使用 ProcessExecution 按順序啟動 2 個應(yīng)用程序

C#
Helenr 2023-07-22 16:56:48
我想啟動2個相關(guān)的應(yīng)用程序。首先,我想啟動我的“服務(wù)”應(yīng)用程序,然后啟動我的“客戶端”應(yīng)用程序。它并不能始終如一地發(fā)揮作用。有時客戶端啟動太快而最終無法連接到服務(wù)。有人可以告訴我哪里需要更改代碼才能正常工作并且只有在服務(wù)完全啟動后才啟動客戶端嗎?public class Program{public static void Main(string[] args){    Console.WriteLine("Starting Service");    StartService();    if (IsServiceRunning())    {        Console.WriteLine("Starting Client");        StartClient();    }    Console.ReadLine();}private static void StartClient(){    ProcessStartInfo startInfo = new ProcessStartInfo()    {        WorkingDirectory = @"C:\Client",        FileName = "Client.exe"    };    Process.Start(startInfo);}private static bool IsServiceRunning(){    Console.WriteLine("Check to see is running...");    Process[] pname = Process.GetProcessesByName("MyCommonService");    int runningCheck = 0;    if (pname.Length == 0 || runningCheck < 10)    {        Console.WriteLine("Did not find the process. Check again...");        runningCheck += 1;        Thread.Sleep(250);        IsServiceRunning();    }    Thread.Sleep(1000);    return true;}private static void StartService(){    Console.WriteLine("Starting Service");    ProcessStartInfo startInfo = new ProcessStartInfo()    {        WorkingDirectory = @"C:\Service",        FileName = "MyCommonService.exe"    };    Process.Start(startInfo);}}
查看完整描述

1 回答

?
慕哥6287543

TA貢獻1831條經(jīng)驗 獲得超10個贊

看起來這始終取決于服務(wù)“完全啟動”所需的時間。如果服務(wù)需要執(zhí)行網(wǎng)絡(luò)操作才能“完全啟動”,您可能無法保證服務(wù)何時“完全啟動”。您可以使用進程間通信,而不是簡單地等待 3,500 毫秒。

2 個 C# 進程之間進行進程間通信的最簡單方法是什么?

基本思想是讓您的服務(wù)進程與您的程序進行通信,如果它返回一個顯示服務(wù)已啟動的字符串,則僅啟動您的客戶端進程。


查看完整回答
反對 回復(fù) 2023-07-22
  • 1 回答
  • 0 關(guān)注
  • 153 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號