WebApi 异步与同步

2024-02-14

我是 .Net WebApi 的新手,因为我知道使用异步 API 而不是同步 API 更好,但有什么区别呢? 如果 API 是同步的并且已从客户端调用,并且从另一个客户端调用,正如我所检查的,不会发生中断,并且两个调用将同时进行。那么,将其设为异步有什么好处呢?

更新:据我了解,如果请求数量很大,如果我使用异步,某些调用的等待时间会更少,因为有更多线程可用于运行任务(因为其中一些线程被释放等待数据库调用,或网络通话等)是真的吗?


在 SYNC 情况下,会发生的情况是,对于每个请求,都会专门分配一个线程,并且仅在完成特定请求时才释放该线程。 而在异步情况下,线程可能会被其他请求重用。

因此,如果您的应用程序受 I/O 限制,那么您可以通过使用 ASYNC 看到应用程序的显着改进,如果您的应用程序受 CPU 限制,则 ASYNC 不会那么有用。

https://en.wikipedia.org/wiki/I/O_bound https://en.wikipedia.org/wiki/I/O_bound

https://en.wikipedia.org/wiki/CPU-bound https://en.wikipedia.org/wiki/CPU-bound

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WebApi 异步与同步 的相关文章

随机推荐

  • 在 Oracle PL/SQL 中,有什么方法可以导入包及其成员吗?

    给定一个包 create or replace package foo as f1 number 1 end 代替 declare begin dbms output put line f1 foo f1 end 我想写 declare b
  • 由于 DelegateCommand 而导致 WPF 应用程序内存泄漏

    我刚刚使用 MVVM 模式完成了用 WPF 和 C 编写的桌面应用程序 在此应用程序中 我使用 Delegate Command 实现来包装 ModelView 中公开的 ICommands 属性 问题是这些 DelegateCommand
  • Firebase 身份验证和数据库[重复]

    这个问题在这里已经有答案了 我对 Firebase 有疑问 我是新手 我想在登录时返回用户名 但该名称在数据库中 我只想返回名称 当然 与身份验证中找到的电子邮件一致 该电子邮件也在数据库中 我的想法是将数据库中的电子邮件与身份验证进行比较
  • 为什么在宏定义中使用 do { } while (0) ? [复制]

    这个问题在这里已经有答案了 可能的重复 为什么 C C 宏中有时会出现无意义的 do while 和 if else 语句 https stackoverflow com questions 154136 why are there som
  • 如何仅捕获特定类型的异常而不中止序列

    RxJs 似乎没有变体catch 方法只允许捕获特定类型的异常 但很多时候我发现自己处于需要这样的操作员的情况 例如 成像我需要解析日志文件的每一行并打印解析的消息 日志文件的某些行可能已损坏 但我真的不在乎 只想为此类行输出 日志消息已损
  • 为什么我无法读取只读文件?

    我有这个方法应该读取文件 Read file s content private ArrayList
  • HTTPS 和 SSL 之间的区别

    HTTPS 和 SSL 有什么区别 我阅读了有关它们的内容并发现了以下内容 HTTPS HTTPS 是 HTTP 与 SSL TLS 的组合 这意味着 HTTPS 基本上是 HTTP 连接 它传递使用 SSL TLS 保护的数据 SSL S
  • luaopen函数

    我在lua示例代码中发现这些调用 luaopen table L luaopen io L luaopen string L luaopen math L 我在 lua 头文件中搜索 发现了 luaopen 的其他函数 LUALIB API
  • jQuery 添加类 onClick

    设置简单 我希望能够在 onClick event 触发时向按钮添加一个类 在本例中 我的问题是我还没有找到将按钮本身作为参数传递给函数的方法 我想做这样的事情
  • 如何在iphone sdk 3.0中实现后台任务的Daemon进程? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 与 qik com 或 ustrea
  • Angular 2 底部的粘性页脚

    我正在 Angular 2 中构建一个项目 我需要一个粘性页脚 它必须始终位于页面底部 而不是固定的 例子 http codepen io chriscoyier pen uwJjr http codepen io chriscoyier
  • 将文件读入包含空行的数组

    我正在使用此代码将文件加载到 bash 中的数组中 IFS n read d r a LINES lt PAR1 但不幸的是 这段代码会跳过空行 我尝试了下一个代码 IFS n read r a LINES lt PAR1 但这个变体只加载
  • 为什么我们需要在 tomcatlogging.properties 中写入两次处理程序?

    From docs http tomcat apache org tomcat 7 0 doc logging html handlers 1catalina org apache juli FileHandler 2localhost o
  • 安全通道支持 WSL 中发生错误[关闭]

    Closed 这个问题是与编程或软件开发无关 help closed questions 目前不接受答案 wsl install Windows Subsystem for Linux is already installed An err
  • 过滤掉配置文件结果中的文件

    Is there any way to filter out some files from collecting CPU profiles in or just filter them out in CPU profile results
  • 如何在网卡上发送pcap文件包? [复制]

    这个问题在这里已经有答案了 我有一些网络流量捕获的 pcap 文件 并希望在 NIC 上发送其数据包 是否可以 有什么应用程序可以做到这一点吗 您应该能够使用某种重播应用程序 例如tc预播放 http tcpreplay synfin ne
  • 如何删除 input[type="date"] 的占位符文本?

    我有一个input type date 具有最小 最大范围 我想要实现的是隐藏自 dd mm yyyy 起以任何语言显示的占位符文本 到目前为止所尝试的是添加以下 CSS input type date in range webkit da
  • SQL注入保护-单引号[重复]

    这个问题在这里已经有答案了 可能的重复 PHP 中防止 SQL 注入的最佳方法 https stackoverflow com questions 60174 best way to prevent sql injection in php
  • 来自电子邮件的 Google 帐户图片

    是否可以像 Gravatar 图像一样检索 Google 帐户个人资料图像 我认为 如果找不到头像 故障转移到 Google 图像会非常方便 如果您能够获取 Google user id 则可以检索 Google 图片 https stac
  • WebApi 异步与同步

    我是 Net WebApi 的新手 因为我知道使用异步 API 而不是同步 API 更好 但有什么区别呢 如果 API 是同步的并且已从客户端调用 并且从另一个客户端调用 正如我所检查的 不会发生中断 并且两个调用将同时进行 那么 将其设为