C# Web,在一个程序中创建子进程,父进程负责保存数据到消息队列,子负责从消息队列中读取数据。
现在我的程序中保存数据和读取数据都已经实现了,但是是在父进程中进行的,我想创建一个子进程,专门负责读取数据。publicDataTableAddWeightData(fl...
现在我的程序中保存数据和读取数据都已经实现了,但是是在父进程中进行的,我想创建一个子进程,专门负责读取数据。
public DataTable AddWeightData(float weight, int weighter)
{
System.Messaging.Message objMsg = new System.Messaging.Message();
string mess1 =" + weighter.ToString() + "," + weight.ToString();
objMsg.Body = mess1;
objMsg.Label = "1";
queue.Send(mess1); //存数据
queue.ReceiveCompleted += new ReceiveCompletedEventHandler(ReceiveData);
queue.BeginReceive();//取数据
}
private static void ReceiveData(Object source, ReceiveCompletedEventArgs asyncResult)
{
//这里面是取数据的操作
}
我在网上查了查新建进程的方法大概是这样:
Process p= new Process();
p.StartInfo.FileName = fileName; //我看这里的fileName是个程序的名字,我怎么才可以把我已经写好的取数据的函数弄成一个exe文件呢?
p.StartInfo.Arguments = command;
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardError = true;
p.StartInfo.CreateNoWindow = true;
p.Start(); 展开
public DataTable AddWeightData(float weight, int weighter)
{
System.Messaging.Message objMsg = new System.Messaging.Message();
string mess1 =" + weighter.ToString() + "," + weight.ToString();
objMsg.Body = mess1;
objMsg.Label = "1";
queue.Send(mess1); //存数据
queue.ReceiveCompleted += new ReceiveCompletedEventHandler(ReceiveData);
queue.BeginReceive();//取数据
}
private static void ReceiveData(Object source, ReceiveCompletedEventArgs asyncResult)
{
//这里面是取数据的操作
}
我在网上查了查新建进程的方法大概是这样:
Process p= new Process();
p.StartInfo.FileName = fileName; //我看这里的fileName是个程序的名字,我怎么才可以把我已经写好的取数据的函数弄成一个exe文件呢?
p.StartInfo.Arguments = command;
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.RedirectStandardError = true;
p.StartInfo.CreateNoWindow = true;
p.Start(); 展开
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励10(财富值+成长值)+提问者悬赏10(财富值+成长值)
若以下回答无法解决问题,邀请你更新回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询