我有一个在生产环境中运作良好的应用程序,但我想知道我是否可以更好地实现并发。此应用程序基于ASP.NET .NET 4和C#。基本上,它动态生成n个SQL语句(目前大约50个),然后并发地运行它们并将数据写入.csv文件中。
编辑:首先我创建一个线程来处理所有工作,以便页面请求可以返回。然后在该线程上...
对于每个SQL语句,我使用TPL创建新任务,并使用datareader执行它,并将数据写入磁盘。当最后一个文件被创建时,我将一些摘要数据写入摘要文件中,并将所有文件压缩成zip文件并提供给用户。
我应该使用线程还是异步委托?
由于我读取的数据库技术细节的特殊性,动态创建SQL语句是完全必要的,所以请不要就此进行解释。 (这是一个专有系统的后端,拥有7,000多个表格)。
编辑:首先我创建一个线程来处理所有工作,以便页面请求可以返回。然后在该线程上...
对于每个SQL语句,我使用TPL创建新任务,并使用datareader执行它,并将数据写入磁盘。当最后一个文件被创建时,我将一些摘要数据写入摘要文件中,并将所有文件压缩成zip文件并提供给用户。
我应该使用线程还是异步委托?
由于我读取的数据库技术细节的特殊性,动态创建SQL语句是完全必要的,所以请不要就此进行解释。 (这是一个专有系统的后端,拥有7,000多个表格)。