我对Asp.Net中需要创建单个线程的时间有疑问吗? 我是编程新手。 在此先感谢。在哪种情况下,我们需要创建一个新的线程?
回答
由于您是编程新手,下面是您的简化事实:从不。您不必在ASP.NET中创建新线程。
当您获得更多经验时,您将了解到高级技巧。
但是,如果我不创建一个线程。它引发错误:“ActiveX控件'8856f961-340a-11d0-a96b-00c04fd705a2'无法实例化,因为当前线程不在单线程单元中。”如何避免这个问题? – Tina 2011-12-21 06:59:06
Web应用程序中的表示层通常不需要自己创建额外的线程。 ASP.NET将管理线程(有时以令人惊讶的方式 - 它是线程敏捷,因此您可以在一生中找到一个请求在多个线程中处理)。
如果你正在编写一个能够以同步(阻塞)的方式处理每个请求的web应用程序,事情是相当简单的 - 如果你需要编写“长轮询”应用程序,你可能会期望几十或数十万个同时连接,全部等待基于事件的响应。 C#5和VB 11将使新的异步功能变得更简单。
通常,线程更有可能在表层创建低,尽管可能仍然运行在ASP.NET中,但可能作为单独的Windows服务运行。但是,即使在那里,除非您真的需要它,否则值得尝试避免多线程的复杂性。
“富”客户端应用程序(WPF,WinForms的,Silverlight的)是多可能更需要线程或至少某种形式的同步性,因为他们需要保持UI线程可以自由地处理UI事件,虽然他们可能有一些后台处理(无论是本地CPU绑定工作还是可能从磁盘或网络加载文件)。
谢谢你的接吻。 – Tina 2011-12-21 06:48:14
- 1. 在这种情况下,我是否需要每次创建DocumentBuilderFactory?
- 2. 在哪种情况下我们在C编程中使用jmp_buf
- 3. 在哪些情况下我们需要保护继承?
- 4. 在这种情况下是否需要新操作员创建新对象?
- 5. 我需要一个多线程WPF应用程序用于这种情况吗?
- 6. 以下哪种情况下需要虚拟析构函数?
- 7. 在这种Java情况下需要哪些序列化?
- 8. 在哪种情况下建议使用ActiveResource?而在这种情况下呢?
- 9. 在哪种情况下将会加载一个新类?
- 10. 在不创建多线程的情况下创建splashscreen
- 11. 在这种情况下,我需要不可变的Map吗?
- 12. 在这种情况下,我真的需要互斥锁吗?
- 13. 为什么我们在这种情况下需要Publish和RefCount Rx操作符?
- 14. 在这种情况下需要帮助搭建脚手架
- 15. 在哪种情况下,我需要提供spring class name作为bean id值?
- 16. 在这种情况下,我还需要为派生类创建一个虚拟析构函数吗?
- 17. 我需要一个线程安全的字符串列表来防止这种情况下的死锁吗?
- 18. 在这种情况下,我需要担心许可证吗?
- 19. 在这种情况下,我需要使用title =“”吗?
- 20. 为什么我需要在这种情况下施放?
- 21. 在这种情况下,我需要共享首选项吗?
- 22. 为什么我需要在这种情况下演员阵容?
- 23. 在什么情况下,我们需要调用GC.Collect两次
- 24. 这种情况下的哪种控制?
- 25. 我需要一个控制器来处理这种情况吗?
- 26. 如何在这种情况下创建一个新张量(从a得出b)?
- 27. 默认情况下,NSPersistentContainer创建哪种持久性存储?
- 28. 我应该在这种情况下创建一个MVC模型吗?
- 29. Azure WebJobs SDK - 在什么情况下需要创建JobHost对象?
- 30. 我会在这种情况下抛出哪个例外?
我不确定这是否正确表达。有很多很好的理由来创建一个新的线程(使用C#和其他语言),我们可以将网站全部列出。你是否遇到任何你不确定的事情? – corsiKa 2011-12-20 07:21:09