当前位置: 首页 > 知识库问答 >
问题:

是。GetAwaiter()。GetResault();一般使用安全吗?

岑彬炳
2023-03-14

我在几个地方读到了.GetAwaiter()。GetResult()可能会导致死锁,我们应该改用async/await。但我看到许多代码示例都使用了这一点。使用它可以吗?在哪些情况下它会死锁?还有什么我应该用的吗,比如任务。等等

共有1个答案

吕翰飞
2023-03-14

正如我在博客中描述的那样,< code>GetAwaiter()。GetResult()在一次一个线程的上下文中使用时会死锁。这在UI线程或ASP.NET上下文中调用时最为常见(对于pre-Core ASP。网)。

等待也有同样的问题。适当的修复方法是使用await,并使调用代码异步。

请注意,控制台应用中的 Main 方法是此规则的例外;在那里使用是完全合适的。许多代码示例都以这种方式使用它。

 类似资料:
  • Fuel 非常重视安全性,并引此採取了以下对策,来确保你 web 应用程序的安全: 编码输出 CSRF 保护 过滤 XSS 过滤输入 SQL 注入 预设情况下,Fuel 不在输入时过滤 POST 和 GET 变数,并且在输出编码所有事物。 当使用 URI 分段时,Fuel 也编码 URI,以防止讨厌的惊喜,并转义要进入资料库的所有事物。 本页面说明 Fuel 提供的一般安全性对策,Security

  • 5.6.1. 通用安全指南 5.6.2. 使MySQL在攻击者面前保持安全 5.6.3. Mysqld安全相关启动选项 5.6.4. LOAD DATA LOCAL安全问题 本节描述一些常见的需要注意的安全问题,以及一些可以使你的MySQL安装更加安全以防止黑客和误用的措施。关于MySQL用于设置用户账户并检查数据库访问的访问控制系统的具体信息,参见5.7节,“MySQL访问权限系统”。 5.6.

  • 我们正在使用与java安装捆绑在一起的keytool生成密钥,以进行非对称RSA加密。鉴于最近发生的事件,有人问我在java keytool的引擎盖下发生了什么。特别是关于结果数字的随机性。(例如,“为什么没有任何随机的用户输入,比如鼠标移动或键盘输入?” 那么,java keytool创建密钥的“随机性来源”是什么呢? 我自己做了一个快速的调查,但我发现的唯一信息是2000年的一篇帖子: 钥匙工

  • 问题内容: 我已经读了很多书,但仍然不了解100%某些SQL注入是如何发生的! 我想从认识的人那里看到基于我的示例的SQL注入的具体示例,因此可以对其进行复制,测试和修复。我试图用SQL注入我的代码,但不能,所以我希望有人证明我的能力! 1.我对吗,SQL注入只能通过POST或GET方法进行,这意味着在网站上它应该是发布形式,例如“注册或搜索”或“ search.php?tags = love”之

  • 2.1.1. MySQL支持的操作系统 2.1.2. 选择要安装的MySQL分发版 2.1.3. 怎样获得MySQL 2.1.4. 通过MD5校验和或GnuPG验证软件包的完整性 2.1.5. 安装布局 在安装MySQL前,你应该: 1. 确定是否MySQL将运行在你的平台上。 2. 选择安装的分发版。 3. 下载分发版并验证其完整性。 本节包含执行上述步骤必需的信息。之后,你可以按照本章中后面几

  • 问题内容: 根据PHP文档,从mysql表中获取最后插入的ID。 我的问题是,如果我有一个网站每秒向数据库插入2行以上,是否可以使用并获得之前在查询行中引用的正确ID ? 问题答案: 从MySQL手册: 生成的ID在每个连接的服务器中维护。这意味着函数返回给定客户端的值是针对该客户端影响AUTO_INCREMENT列的最新语句生成的第一个AUTO_INCREMENT值。即使其他客户端生成自己的AU