Blazor 启动错误:System.Threading.SynchronizationLockException:无法在此运行时上等待监视器

2024-02-05

我试图在 blazor(客户端)启动期间调用 api,将语言翻译加载到 ILocalizer 中。

此时,我尝试从获取请求中获取 .Result blazor 会在标题中抛出错误。

这可以通过在program.cs中调用此方法来复制

  private static void CalApi()
    {
        try
        {
            HttpClient httpClient = new HttpClient();
            httpClient.BaseAddress = new Uri(@"https://dummy.restapiexample.com/api/v1/employees");
            string path = "ididcontent.json";
            string response = httpClient.GetStringAsync(path)?.Result;
            Console.WriteLine(response);
        }
        catch(Exception ex)
        {
            Console.WriteLine("Error getting api response: " + ex);
        }

    }

Avoid .Result,很容易陷入僵局。您收到此错误是因为单线程 WebAssembly 不(不能)支持该机制。我认为这是一个功能。如果它可以等待监视器,它就会冻结。

private static async Task CalApi()
{
   ... 
   string response = await httpClient.GetStringAsync(path); 
   ...
}

所有事件和生命周期方法重写都可以async Task在 Blazor 中,所以您应该能够适应这一点。

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

Blazor 启动错误:System.Threading.SynchronizationLockException:无法在此运行时上等待监视器 的相关文章

  • 将 SQLite 与 Blazor WASM 结合使用有什么好处?

    我正在看这个Steve Sanderson 的视频演示了如何将 SQLite 与 Blazor Web Assembly 结合使用 https www youtube com watch v kesUNeBZ1Os我正在考虑在我的一个项目中
  • 如何将异步函数存储在结构中并从结构实例调用它?

    我正在尝试用新的方法来实现这一目标async await句法 std future Futures 和最新版本的 Tokio 我正在使用东京0 2 0 alpha 4和铁锈1 39 0 nightly 我尝试过的不同事情包括 using B
  • 如何使用计划库运行异步函数?

    我正在使用discord py rewrite 编写一个discord 机器人 并且我想每天在特定时间运行一个函数 我对异步函数完全没有经验 而且我无法弄清楚如何在不使用 await 的情况下运行异步函数 这只是我的一段代码 这就是为什么有
  • 将阻塞调用包装为异步,以实现更好的线程重用和响应式 UI

    我有一个类负责通过调用遗留类来检索产品可用性 该遗留类本身通过进行 BLOCKING 网络调用在内部收集产品数据 请注意 我无法修改旧版 API 的代码 由于所有产品都是相互独立的 因此我希望并行收集信息 而不会创建任何不必要的线程 也不会
  • 为什么 TestBed beforeeach 使用 waitForAsync 而不是仅仅使用 async/awaitcompileComponents?

    编辑 我在 Angular 上提出了一个问题 他们更新了文档 https github com angular angular issues 39740 https github com angular angular issues 397
  • Task.WaitAll 保持循环

    我正在尝试这个异步代码只是为了测试 async 关键字 public async Task
  • 如何在服务器端应用程序中获取本地数据源?

    我正在使用 blazor 服务器端应用程序 我需要引用本地数据源 我已经使用 Http 作为默认客户端示例 code ChartData dataSource protected override async Task OnInitAsyn
  • 如何将 URL 输入参数值传递到 Blazor 页面?

    这会将值传递给 blazor 组件 Parameter public string Id get set 但是如果从 URL 输入参数传递一个值呢 在组件内定义并用 Parameter 属性注释的公共属性用于存储从其父组件传递到子组件的 C
  • 为什么我的异步函数返回得太快? [复制]

    这个问题在这里已经有答案了 我正在尝试使用异步函数来调用另一个函数内的函数 它看起来像这样 const getConnectionsWithEmailsHash async gt const connectionsWithEmails aw
  • 使用异步时 SqlConnection 未被释放

    我有一个项目 有一个 Sql Server 数据库后端和 Dapper 作为 ORM 我正在尝试使用 Dapper 的QueryAsync 方法来获取一些数据 不仅如此 对我的存储库的调用来自几个使用 a 调用的任务内部Task WhenA
  • 有没有办法在 Blazor 中隐藏 div?

    我正在使用 Blazor 并且想在按下导航栏切换器图标时隐藏侧边栏 列表项崩溃了 但问题是 div 仍然存在 div class page div class sidebar div class nav top row pl 4 navba
  • async-await 如何“节省线程”?

    我知道使用无线程异步有更多线程可用于服务输入 例如 HTTP 请求 但我不明白当异步操作完成并且需要一个线程来运行它们时 这如何不会潜在地导致线程饥饿继续 假设我们只有 3 个线程 Thread 1 Thread 2 Thread 3 并且
  • 如何使用 SqlDataReader 返回和使用 IAsyncEnumerable

    请看下面两种方法 第一个返回一个IAsyncEnumerable 第二个试图消耗它 using System Collections Generic using System Data using System Data SqlClient
  • ServiceStack:异步/等待服务处理程序

    我读过一些涉及这个问题的问题 尽管其中许多已经有好几年了 如何在 ServiceStack API 中编写 Service 处理程序 使其成为 async await docs servicestack net 上没有任何文档提到 asyn
  • 定时器内嵌套异步等待 - 不返回所需的值

    我必须使用 Mocha 和 chai 测试来测试端点的响应 下面是相同的代码 async function getData userId let response let interval setInterval async gt resp
  • ES6 生成器——它们真的是 async/await 的替代品吗?

    评论区的帖子之一this http blogs msdn com b typescript archive 2014 10 22 typescript and the road to 2 0 aspx打字稿博客文章说 如果我必须等到 2 0
  • 处理异步并行任务的多个异常

    Problem 多个任务并行运行 所有任务 没有任务或其中任何任务都可能抛出异常 当所有任务完成后 必须报告所有可能发生的异常 通过日志 电子邮件 控制台输出 等等 预期行为 我可以通过 linq 使用异步 lambda 构建所有任务 然后
  • C# 异步任务比同步慢

    你知道为什么同步斐波那契方法比异步 等待更快并且比异步任务更快吗 我在每个项目方法上都使用了异步 所以主要是这是一个非常糟糕的方法 Code static int FibonacciSync int number if number 0 r
  • Cypress.io 如何处理异步代码

    我正在将旧的水豚测试转移到 cypress io 因为我们的应用程序正在采用 SPA 方式 在我们的案例中 我们有超过 2000 个测试 涵盖了很多功能 因此 测试功能的常见模式是让用户创建并发布报价 一开始我写了 cypress 浏览页面
  • 同步执行异步函数

    我对此主题进行了大量搜索 并且阅读了本网站上有关此主题的大部分帖子 但是我仍然感到困惑 我需要一个直接的答案 这是我的情况 我有一个已建立的 Winform 应用程序 但无法使其全部 异步 我现在被迫使用一个全部编写为异步函数的外部库 在我

随机推荐

  • 如何使用 JavaScript/jQuery 按数组或对象中的多个项目建立索引?

    背景 我在 Ajax 调用返回的结果对象中有一个数据数组 数据如下 Name User1 Name1 FirstName User1 Id 005400000001234567 more Name User2 Name1 FirstName
  • 如何在 jQuery 中引用附加项?

    我想在 jquery 中创建并附加一个项目 同时保存对它的引用 var buy img src img buy now png var buy buy appendTo body buy html hello 我期待像上面这样的事情能够发挥
  • iOS spriteKit 子节点相对于视图坐标的位置

    我有一个子节点添加到另一个节点 我想获取子节点相对于视图坐标的位置 而不是父节点坐标 获取子节点position https developer apple com library ios documentation SpriteKit R
  • 复选框的图像替换

    我正在尝试使用复选框的自定义图像 如本问题所述 纯CSS复选框图像替换 https stackoverflow com questions 3772273 pure css checkbox image replacement 我的复选框出
  • 容器化 C# Winforms 应用程序

    我有一个独立的 Winform 应用程序 可以将其容器化到 docker 中 docker支持基于UI的应用程序吗 我是否需要 docker 来测试应用程序 对的 这是可能的 您将能够使用以下方式将其容器化https hub docker
  • 角度指令绑定到元素的高度

    我对 Angular 相当陌生 希望能够绑定到元素的高度 在我目前的情况下 我想绑定CSSbottom on el1达到el2 它们不共享公共控制器 我怎样才能做到这一点 div div div style height 573px div
  • 在 Pyramid Web 框架中,如何将敏感设置从外部文件导入到development.ini / Production.ini 中?

    我想保留development ini and production ini在版本控制下 但出于安全原因不希望sqlalchemy url要存储的连接字符串 因为这将包含用于数据库连接的用户名和密码 在 Pyramid 中 从其他外部文件获
  • 将 UILabel 的文本设置为粗体

    我想让 UILabel 的文本变为粗体 infoLabel UILabel alloc initWithFrame CGRectMake 90 150 200 30 infoLabel setText Drag 14 more Flavor
  • 创建订购和结帐系统,防止付款期间更改购物车

    因此 我有一个多页结账系统 它依赖于会话来存储购物车的内容 我还使用第三方系统来处理信用卡 该系统在其服务器上托管实际的支付页面 我只需将最终总数发布到页面即可 我预见的问题是 如果有人点击进入托管支付页面 然后出于某种合法或邪恶的原因更改
  • urlManager 在 Yii 2.0 中不工作

    我正在尝试学习 yii 2 0 目前我正在使用basicyii 2 0 版本 第一步是配置 url 所以根据指南 我启用了mod rewrite 使用检查它phpinfo 然后在中添加以下行components of config web
  • 将 'yyyymmdd hhmmss' 转换为 'mm/dd/yy hh:mm'

    我有一行数据 单元格 A3 及以下 其中包含 Unix 时间戳yyyymmdd hhmmss我试图转换成的格式mm dd yy hh mm format 自动地 当我的数据从单元格 A1 开始时 到目前为止 我的代码可以工作 但我需要 A1
  • 如何在集合获取中保留自定义属性

    我有一个 资产 骨干模型 它有一个名为 选定 的自定义属性 它是自定义的 因为它不是服务器端对象的一部分 我用它来表示用户当前选择的资产列表中的哪一个 var Asset Backbone Model extend defaults sel
  • 从 Spring Boot 应用程序运行 KSQL 的方式是什么

    我有一个连接到 kafka 集群的 Spring Boot 应用程序 如何从 java 代码运行 KSQL 目前 还没有直接的方法在java中使用KSQL作为库 有一个开放的问题 734 https github com confluent
  • Highcharts TypeScript,y 轴标签

    请参考讨论Highcharts y 轴文本标签 https stackoverflow com questions 4987457 highcharts text labels for y axis设置y轴标签的方法 I used http
  • GWT UiBinder 和图像精灵

    我无法让 CSS 图像精灵出现在 GWT UiBinder 中 我做了评论如何在 GWT 中使用图像精灵 https stackoverflow com questions 4535094 how do i use image sprite
  • 如何创建与环境无关的 JavaScript 库

    我正在创建一个 javascript 库 我希望它与环境无关 它不会使用 DOM AJAX 或 NodeJS api 它将是普通的 javascript 因此 它应该可以在任何 javascript 环境中运行 浏览器 npm meteor
  • 12因素应用程序存储配置的过程是什么?

    所以我一直将我的应用程序主要构建为 12 因素应用程序 现在查看配置部分 目前 我有用于开发和生产的单独配置文件 通过构建过程 我们可以构建开发或生产映像 代码 100 相同 唯一改变的是配置 现在我 100 明白 在 12 因素应用程序中
  • C++中iostream头的cout、cerr、clog有什么区别?什么时候使用哪一个?

    我尝试研究之间的区别cout cerr and clog在互联网上但找不到完美的答案 我仍然不清楚何时使用哪个 谁能通过简单的程序向我解释并说明何时使用哪个程序的完美情况 我参观过这个网站 http www tutorialspoint c
  • 嵌套向量与连续数组的性能影响

    是否有任何可靠的测试可以清楚地显示访问和写入嵌套向量与 C 内置数组之间的性能差异 我听说 与访问单个数组中的元素 所有元素都存储在连续的内存中 相比 使用嵌套 多维 向量通常会产生一些性能开销 但这对我来说似乎都是假设的 我还没有看到任何
  • Blazor 启动错误:System.Threading.SynchronizationLockException:无法在此运行时上等待监视器

    我试图在 blazor 客户端 启动期间调用 api 将语言翻译加载到 ILocalizer 中 此时 我尝试从获取请求中获取 Result blazor 会在标题中抛出错误 这可以通过在program cs中调用此方法来复制 privat