?.NET Framework 4 中的新增功能
主题包含有关 .NET Framework 4 版中的主要功能和改进的信息。此主题不提供有关所有新增功能的完整信息,并有可能会发生更改。
.NET Framework 4 引进了改进的安全模式。有关更多信息,请参见.NET Framework 4 中的安全性更改。
以下各节介绍了 .NET Framework 4 的其它新增功能和改进:
应用程序兼容性和部署
核心新增功能和改进
Managed Extensibility Framework
并行计算
网络
网页
客户端
数据
通信和工作流
应用程序兼容性和部署
.NET Framework 4 与使用 .NET Framework 早期版本生成的应用程序有很高的兼容性,除了提高安全性、标准遵从性、正确性、可靠性和性能所做的一些更改之外。
.NET Framework 4 不能自动使用自己的公共语言运行时版本来运行由 .NET Framework 早期版本生成的应用程序。若要使用 .NET Framework 4 运行较早的应用程序,则必须使用 Visual Studio 中项目的属性指定的目标 .NET Framework 版本编译应用程序, 或使用应用程序配置文件中的
元素 可指定所支持的运行时。
如果安装 .NET Framework 4 后,您的应用程序或组件无法运行,请在 Microsoft Connect 网站上提交 bug。您可以按照 .NET Framework 4 Application Compatibility(.NET Framework 4 应用程序兼容性)主题中的描述测试兼容性,并通过 Visual Studio 2010 and .NET Framework 4 Walkthroughs(Visual Studio 2010 和 .NET Framework 4 演练)来了解新增功能。有关其他信息和已知迁移问题,请访问 .NET Framework Compatibility blog(.NET Framework 兼容性博客)。
以下各节介绍了部署改进。
Client Profile
.NET Framework 4 Client Profile 比以前版本支持更多平台,并可为 Windows Presentation Foundation (WPF)、控制台或 Windows 窗体应用程序提供更快的部署体验。有关更多信息,请参见.NET Framework Client Profile。
进程内并行执行
此功能使应用程序能够在同一个进程中加载和启动多个版本的 .NET Framework。例如,您可以运行在同一进程中加载基于 .NET Framework 2.0 SP1 的外接程序(或组件)和基于 .NET Framework 4 的外接程序的应用程序。较旧组件可继续使用 .NET Framework 的较旧版本,新组件则使用 .NET Framework 的新版本。有关更多信息,请参见 进程内并行执行。
返回页首
核心新增功能和改进
以下各节介绍公共语言运行时和基类库提供的新增功能和改进。
诊断和性能
.NET Framework 的早期版本没有提供用于确定特定应用程序域是否影响其他应用程序域的方法,因为操作系统 API 和工具(例如,Windows 任务管理器)仅精确到进程级别。从 .NET Framework 4 开始,您可以获得每个应用程序域的处理器使用情况和内
存使用情况估计值。
可监控各个应用程序域对 CPU 和内存的使用情况。通过托管承载 API、本机承载 API 以及 Windows 事件跟踪 (ETW),可提供应用程序域资源监控。在启用此功能后,将在进程的生存期内收集有关进程中所有应用程序域的统计信息。请参见新增的 AppDomain..::..MonitoringIsEnabled 属性。
您现在可以访问 ETW 事件以用于诊断目的,从而改进性能。有关更多信息,请参见 CLR ETW 事件和控制 .NET Framework 日志记录。另外,请参见 性能计数器和进程内并行应用程序。
System.Runtime.ExceptionServices..::..HandleProcessCorruptedStateExceptionsAttribute 特性使托管代码能够处理指示损坏进程状态的异常。
垃圾回收
.NET Framework 4 提供背景垃圾回收。此功能替代了以前版本中的并发垃圾回收并提高了性能。有关更多信息,请参见 垃圾回收的基础。
代码协定
代码协定允许您指定方法或类型的签名没有单独表示的协定信息。新的 System.Diagnostics.Contracts 命名空间包含的类可提供一种与语言无关的方式以前置条件、后置条件和对象固