我需要做一些需要异步的操作(比如向数据库写入一些内容,同时从中读取一些内容,反序列化我从中读取的内容,对这些数据执行某些操作...等等),但我需要要么在线程上执行此操作,要么在任务上执行此操作,以便我可以在执行期间执行其他操作。
此外,如果可以喜欢,总是一方面读取数据库,另一方面在其中写入数据,那就太好了,我很确定这是可能的,但我不确定如何实现它,以及使用什么库/工具/功能...等
我正在开发控制台应用程序
我尝试了一些东西,例如带有一些等待的异步方法,但我不太了解所有这些之间的执行顺序,问题还在于我不太了解 / 关键字以及如何工作,但async我await尝试Task了少量。
我正在研究的实际上是 2 Task.Run,一个在数据库方法中写入数据,另一个Task.Run读取数据库,问题是在这两个方法中,我都有函数async,然后,需要等待它们某处,因此也需要等待对写入数据或读取数据的调用,但我不知道如何制作Task.Run async
static async Task Main(string[]args)
{
// Those two tasks need to run at the same time
Task.Run(() =>
{
// Need to be awaited
var writer = WritingDatabase();
}
Task.Run(() =>
{
// Need to be awaited as well
var reader = ReadingDatabase();
}
}
public async Task<List<Code>> ReadingDatabase()
{
List<Code> listCode = new List<Code>();
// Some code
listCode.Add(await database.ReceiveMessageAsync());
return listCode;
}
上面的代码是一个示例,其中可能存在一些错误,但我的代码的功能是存在的
12345678_0001
拉风的咖菲猫
侃侃无极
相关分类