• 2024-09-30async/await 函数到底要不要加 try catch ?
    前言写异步函数的时候,promise和async两种方案都非常常见,甚至同一个项目里,不同的开发人员都使用不同的习惯,不过关于两者的比较不是本文关注的重点,只总结为一句话:“async是异步编程的终极解决方案”。当使用async函数的时候,很多文章都说建议用trycatch来捕获异常,可是
  • 2024-09-30nodejs
    IntroductionForNodejsbaseonv8engine,andsignalthread,andasynconousI/O.基于v8,性能出色单线程,没有线程开销,没有多线程相关的复杂的问题(锁,池等,thesourceofbug.),隐藏了,其实node自己本身底层的实现有多线程池,只是上层不必考虑.异步I/O,不会浪费cpu等
  • 2024-09-30[.NET Blog] .NET Aspire 测试入门
    https://devblogs.microsoft.com/dotnet/getting-started-with-testing-and-dotnet-aspire/自动化测试是软件开发的重要一环。它可以帮助我们尽早确认软件中的缺陷和防止回归问题。在本文中,我们将探讨如何在.NETAspire中开始测试,支持我们进行跨分布式应用的测试场景。测试分
  • 2024-09-29HarmonyOs DevEco Studio小技巧24--异步编程(Promises、async/await)
    异步编程:调用后耗时,不阻塞代码继续执行,将来完成后,触发回调函数传递结果异步编程的范畴:网络请求(如使用 fetch 或 XMLHttpRequest 发送HTTP请求获取数据)。文件读写操作(读取或写入本地文件)。数据库操作(查询、插入、更新、删除数据)。定时器函数(如 setTimeout 和 setInt
  • 2024-09-28Tauri2.0+Vite5聊天室|vue3+tauri2+element-plus仿微信|tauri聊天应用
    原创tauri2.0+vue3+pinai2仿QQ/微信客户端聊天Exe程序TauriWinChat。tauri2-vue3-winchat自研vite5+tauri2.0+vue3setup+element-plus跨平台仿QQ|微信桌面端聊天软件。全新封装tauri2多开窗口管理、自定义圆角阴影窗体。实现聊天、通讯录、收藏、我的、朋友圈/小视频等模块。
  • 2024-09-27不需要驱动的自动化
    importasynciofromDecoratorimportDecoratorfromplaywright.async_apiimportasync_playwrightclassMyClass:@Decorator.retryasyncdefrun_html(self,playwright,url:str):#启动Chromium浏览器,无头模式(headless=True表示不显示浏览器界面)
  • 2024-09-27c# async await详解
    asyncawait传染性async/await具有传染性其实指的是你需要把异步函数的结果包装在Task类型当中。之所以c#要加async的主要原因是之前的await不是关键字,老代码可能会把await作为变量名,为了兼容性才加了async明确标识函数是continuation。await不能省略,在语义上有违直觉,为什么T
  • 2024-09-26C# WebSocket Servers -- Fleck、SuperSocket、TouchSocke
    C#WebSocketServers--Fleck、SuperSocket、TouchSocke 最近在维护老项目,感觉内存一直都有问题,定位到问题是WebSocketServer的问题,了解了Fleck、SuperSocket、TouchSocke等开源项目,这里记录一下。可能今后都不会用些轮子了,.net5、.net6、.net7、.net8项目已经集成了We
  • 2024-09-26C# WebSocket Servers -- Fleck、SuperSocket、TouchSocke
    最近在维护老项目,感觉内存一直都有问题,定位到问题是WebSocketServer的问题,了解了Fleck、SuperSocket、TouchSocke等开源项目,这里记录一下。可能今后都不会用些轮子了,.net5、.net6、.net7、.net8项目已经集成了WebSocket,只要 app.UseWebSockets()代码就可以了,详情见 WebS
  • 2024-09-26C# 异步自动数据采集功能
    ///<summary>///执行数据采集命令///</summary>///<paramname="m"></param>///<returns></returns>[HttpPost][Route("DataAcquisitionAuto")]publicasyncTask<MessageModel<string>>DataAcquis
  • 2024-09-26.NetCore MySqlException 多线程中(There is already an open DataReader associated with this )错误解决方案
    问题描述:其实标题只是遇到问题的其中之一,遇到三种异常信息如下:Lockwaittimeoutexceeded;tryrestartingtransaction大概意思:超过锁定等待超时;尝试重新启动事务 ThereisalreadyanopenDataReaderassociatedwiththisConnectionwhichmustbeclosedfirst.大
  • 2024-09-25前端使用xlsx模板导出表格
    前端使用xlsx模板导出表格 前言前端导出表格有很多种方案,但是表格样式一旦复杂了,那么就得用代码写excel的样式,还是比较麻烦的。每次样式不一样,就得重新写,这时使用表格模板的优势就体现出来了,想导出不同样式的表格直接修改表格模板即可。方案我找了两种方案:1、使用xlsx-tem
  • 2024-09-25初步学习async/await,Task.GetAwaiter,Task.Result
    初步学习async/await,Task.GetAwaiter,Task.Result   网上关于async/await的知识有很多,看了很多但不如自己实践一遍来得快,所以这里记录下我的理解和大家学习下。  首先以最简单的同步方法来开始如下privatestaticvoidTest(){Console.Wr
  • 2024-09-24万象更新 Html5 - es6 进阶: async/await
    源码https://github.com/webabcd/Html5作者webabcd万象更新Html5-es6进阶:async/await示例如下:es6\src\advanced\async_await.js/***async/await-用于异步编程(非多线程)*asyncfunction返回的是Promise对象*await用于等Promise对象或者thenab
  • 2024-09-24async await执行顺序
    asyncawait执行顺序async/await 是用于编写异步代码的语法糖,它允许你以类似于同步代码的方式写异步操作。async 关键字声明的函数会返回一个Promise,而 await 关键字用于等待一个Promise完成。执行顺序如下:调用 async 函数。函数会继续执行,遇到 await 时,控制
  • 2024-09-22Flutter中使用Sqflite封装数据库操作与更新管理
    1.简介在Flutter中,sqflite是一个强大的插件,用于SQLite数据库操作。我们可以通过封装sqflite库的数据库操作来使代码更清晰和模块化。本篇文章将介绍如何封装增删改查、数据库版本控制与更新的处理,以及如何将查询结果映射到实体类。2.初始化数据库与数据库封装创建数据库
  • 2024-09-21socket
    ServerinternalclassProgram{staticasyncTaskMain(string[]args){varendpoint=newIPEndPoint(IPAddress.Parse("127.0.0.1"),5000);varsocket=newSocket(endpoint.AddressFamily,SocketType.Stream,Protocol
  • 2024-09-20兼收并蓄 TypeScript - 进阶: async/await
    源码https://github.com/webabcd/TypeScriptDemo作者webabcd兼收并蓄TypeScript-进阶:async/await示例如下:advanced\async_await.ts{/***async/await-用于异步编程(非多线程)*asyncfunction返回的是Promise对象*await用于等Pro
  • 2024-09-20NetCore Channel-生产者&消费者
    usingSystem.Threading.Channels;namespaceChannelDemo{publicclassChannelMgr{//优势//允许开发者根据需要创建具有固定容量(有界)或无限容量(无界)的通道//staticChannel<string>channel=Channel.CreateBounded<strin
  • 2024-09-19深入解析Vue 3组合函数:提高代码复用性和模块化的最佳实践
    随着Vue3的引入,组合式API(CompositionAPI)带来了更灵活的代码组织方式,组合函数作为其核心部分,能够显著提升代码的可维护性、复用性和模块化。在这篇文章中,我们将通过一个具体的表格管理和分页功能的示例,详细介绍如何使用组合函数来构建更加高效和清晰的Vue3应用。1.组合函数
  • 2024-09-19WPF 异步
    在WPF中,异步编程非常重要,尤其是为了保持UI线程的响应性。由于WPF的UI操作必须在主线程上进行,耗时的任务(如文件读写、网络请求等)如果直接在UI线程上执行,会导致UI冻结,界面无法响应用户操作。因此,使用异步编程可以避免这些问题,使得任务能够在后台线程中执行,同时保持U
  • 2024-09-19完美解决 Async/await 不按预期工作 的正确解决方法,亲测有效!!!
    完美解决Async/await不按预期工作的正确解决方法,亲测有效!!!亲测有效完美解决Async/await不按预期工作的正确解决方法,亲测有效!!!报错问题可能出现的原因解决思路解决方法1.确保在`async`函数内部使用`await`2.正确返回Promise3.使用`try...catch`捕获错误4.
  • 2024-09-19IdentityServer4取消使用HTTPS问题
    //Copyright(c)BrockAllen&DominickBaier.Allrightsreserved.//LicensedundertheApacheLicense,Version2.0.SeeLICENSEintheprojectrootforlicenseinformation.usingIdentityModel.Client;usingNewtonsoft.Json.Linq;usingSystem;usin
  • 2024-09-19OAuth2.0授权-gitee授权码模式
    OAuth2.0授权验证-gitee授权码模式本文主要介绍如何笔者自己是如何使用gitee提供的OAuth2.0协议完成授权验证并登录到自己的系统,完整模式如图1、创建应用打开gitee个人中心->第三方应用->创建应用创建应用后在我的应用界面,查看已创建应用的ClientID和ClientSecret2、对接
  • 2024-09-18Python 语法糖:让编程更简单(续)
    Python语法糖:让编程更简单(续)6.SlicenotationSlicenotation是Python中的一种语法糖,用于从列表或字符串中获取子串或子列表。例如:numbers=[1,2,3,4,5]print(numbers[1:3])#Output:[2,3]这段代码将从numbers列表中获取索引为1到3的子列表。7.f-stringsf-str