我想使用c ++ / cli创建的.dll,其中包含c#wpf项目中的普通c代码。 c代码的功能需要永久调用。在c命令行应用程序的主要功能中,该函数在无限循环中被命名。
如何在不干扰应用程序其余部分的情况下从wpf c#项目中永久调用函数?我想这应该很简单,但我是wpf的新手,对.Net来说还算新。
答案 0 :(得分:1)
您可以在另一个thread上进行while(true)
循环。
答案 1 :(得分:1)
如果我理解正确,你想要做的就是继续调用方法?使用计时器:
在文件顶部添加using System.Windows.Threading;
。然后写:
DispatcherTimer timer = new DispatcherTimer();
timer.Interval = TimeSpan.FromMilliseconds(x); //x is the amount of milliseconds you want between each method call
timer.Tick += (source, e) =>
{
method();
};
timer.Start();
计时器将在每个tick中运行您的方法,您可以在匿名方法中编写其他代码来控制调用方法的次数/次数,调用方法的时间等等。当然,它不会干扰你的其他程序。
如果您想尽可能多地调用您的程序,请将第二行中的x替换为1。
答案 2 :(得分:0)
using System.Threading;
Thread t = new Thread(()=>{
while(true)
{
//call your method here...
Thread.Sleep(500); //optional if you want a pause between calls.
}
});
t.IsBackground = true;
t.Start();