YuCheng's Site
Posts
[DB] Database
[SQL] CTE
[SQL] Merge
[SQL] Ranking
[OS] Linux
[Arch] 安裝(Virtualbox)
[CentOS] 設定網路靜態IP
[Ubuntu] SSH 連線
[Ubuntu] 設定網路靜態IP
[Secure] 安全性議題
[授權] OAuth 2.0 簡介
[授權] OAuth 2.0 授權許可
[Web] Web 相關
[Keycloak] docker 安裝
[Web] FontForge 造難字
[Web] 敏感性 GET 參數
[Web] 敏感性 GET 參數
[前端] Javascript
[JS] Array 常用方法
[JS] Object 常用方法
[JS] 各種模組(module)
[JS] 提升與暫時性死區
[JS] 非同步程式設計
[JS]原型繼承鏈模型
[Code] 格式化民國年
[Code] 複製元件內的文字
[DIY] 前端路由
[DIY] 開發 proxy
[前端] Typescript
[TS] 擴充標準內建物件
[前端] Vue
[Router] Navigation Guard 加入查詢參數
[TS] TS-Provide
[元件] CheckBox
[元件] Promise 元件方法
[元件] Transparent Wrapper
[元件] TypeScript 注意事項
[元件] 全域元件
[後端] .NET
[.NET] .NET 6 Web API 專案
[.NET] PDF 列印
[.NET] WebView2 單檔部屬
[.NET] 製作 Nuget package
[.NET] 開發階段專案敏感資料
[Snippet] DataTable轉Json
[Snippet] JsonElement 操作
[部屬手動] Ubuntu Nginx
[基礎] 非同步控制器
[練習] 認證與授權
[驗證與授權] 驗證與授權
[驗證與授權] 驗證設定
[驗證與授權] 驗證實例
[驗證與授權] 授權設定
[驗證與授權] 備註頁面
[練習] 即時聊天專案
[SignalR] 建立專案
[SignalR] 後端 Token 授權
[SignalR] 前端登入頁面
[SignalR] 後端 Token 認證
[後端] csharp
[Code] 處理民國年
[Code] 處理民國年
[系統] 軟體設計
[架構] 多層(layer)架構
[架構] 多層(tier)架構
[架構] 無暇的程式碼
[程式] 巢狀結構
[程設] 鏈式語法比較
[維運] Container 容器
[Basic] 學習資源
[Docker] 基礎指令
[Docker] 安裝
[K8s] 共享 tnsnames.ora
[K8S] 自架 K8S 腳本
[維運] DevOps
[Git] orphan branch/worktree
[Git] Release Action (Dotnet)
[Git] Release Action (Vue)
[K8S] K8S 安裝
[SonarQube] 安裝與.NET 檢測
[HIS] FHIR
[SMART] Overview
[其他] Other
[智能家居] Home Assistant
[安裝] Home Assistant 安裝
[Bot] Telegram Bot
[DIY] 一鍵登入台灣杉
[Hugo] Toha Theme
[OpenWrt] Docker
[工具] Gdrive CLI / Linux
[工具] openapi generator
[工具] Vim Plugin YCM
[授權] OAuth2.0
Yu Cheng
Friday, July 28, 2023
[C#] 非同步
DeadLock
Reference
[]https://blog.darkthread.net/blog/await-task-block-deadlock/)
[]https://blog.stephencleary.com/2012/07/dont-block-on-async-code.html)
[]https://learn.microsoft.com/en-us/archive/msdn-magazine/2013/march/async-await-best-practices-in-asynchronous-programming)
Improve this page
Prev
[SignalR] Websocket 即時聊天程式(三) - 後端 Token 認證
Next
[Code] 處理民國年
Table of Contents
Reference