如何创建一个不结束但等待事件的控制台应用程序



我想用twitter流API创建一个机器人程序。所以基本上,一个事件被触发,我会做一些事情。

我想让它在linux环境中的docker容器中运行。

我遇到的问题是我的控制台会自动关闭。这是我的代码

public static async Task Main()
{
var  credentials = new TwitterCredentials(consumerKey: "",
consumerSecret: "",
accessToken: "",
accessTokenSecret: "");    
var stream = Tweetinvi.Stream.CreateFilteredStream(credentials);
stream.AddFollow(someUserId,
tweet =>
{
doSomething(tweet);
});
stream.MatchingTweetReceived += (s, e) =>
{
doSomething(e.Tweet);
};
await stream.StartStreamMatchingAllConditionsAsync();
}

我等待Stream启动,但控制台会自行关闭。我不在等任何事件。我该如何更改?

听起来StartStreamMatchingAllConditionsAsync在某个时刻完成,这会导致应用程序退出。

你需要的是一些你可以await但永远不会完成的东西。任务。延迟可以为你做到这一点。只需将此作为函数的最后一行:

await Task.Delay(-1);

相关内容

  • 没有找到相关文章

最新更新