- 博客(436)
- 资源 (7)
- 收藏
- 关注
原创 C# Retry库
比如网络访问或硬件参数设置需要重试,可引用gunet上的Polly库。同步方式(每次重试有不同的时间间隔)异步方式(每次重试有不同的时间间隔)
2024-10-27 15:18:26 255
原创 C# async-await循环依赖梳理
3、Task.Run内的委托函数声明为async可以在内部使用await(结合第2条,委托可以接受async函数,也可接受无async的函数)C#的async声明的函数内可以使用await,await的函数又需要async声明的函数,感觉两者互为对方的前提条件,是个死循环。2、winform或wpf控件事件加上async。1、main函数声明前面加上async。
2024-10-26 22:11:21 360
原创 CSharpScript范例
Console.WriteLine("时间: " + date1.ToString("yyyy-MM-dd HH:mm:ss:fff"));Console.WriteLine("时间: " + date1.ToString("yyyy-MM-dd HH:mm:ss:fff"));Console.WriteLine("时间: " + date1.ToString("yyyy-MM-dd HH:mm:ss:fff"));
2024-10-14 22:44:25 357
原创 跨服务器执行PowerShell脚本
Set-NetConnectionProfile -Name "未识别的网络" -NetworkCategory Private。如有多个服务器需要维护,可减少远程桌面操作次数。配置完毕,在本机编写脚本在远程执行。将远程机ip加入信任列表。本机和远程机都要执行。本机和远程机都要执行。
2024-09-13 23:16:19 518
原创 C# Benchmark
注:关注StdDev(标准偏差)即可,越小越好。Mean为平均值,ERROR为标准误差;Ratio为异众比率;右键项目--属性, 勾选优化编译。
2024-06-30 12:02:40 432
原创 C# ObjectPool测试
ObjectPool测试结论:DefaultObjectPool的第二个参数设置合理的缓存大小,应用过程中可以确保无GC,内存稳定;如不启用缓存机制,大量new A对象,频繁GC,内存量跳跃。
2024-06-25 16:39:25 362
原创 openobserve-filebeat配置
上图第一、第三个红框是从openobserver采集-自定义-filebeat中拷贝过来的内容;第二个红框为日志文件所在目录,红框上方的encoding指定日志文件编码方式,否则openserver采集到的日志可能乱码;filebeat启动:打开powershell,输入./filebeat.exe -e -c filebeat.yml。如要启动多个采集实例,需拷贝filebeat目录,修改配置后在启动,否则提示目录被锁定。openobserver内无需配置,推送后会自动创建对应的组织和数据流。
2024-04-21 20:54:30 726
原创 Rust引用借用 vs 原始指针
原始指针和unsafe块配合,可以避过引用借用保护,但也失去了rust的优势。rust严谨也足够灵活...,除非必要原始指针慎用,用多了又变成c了...
2024-03-28 22:31:41 557
原创 rust引用本地crate
常规方式在Cargo.xml中声明引用的crate,build时去crate.io下载或检查版本,但可能因网络因素导致build失败。首次正常引用三方crate,build时自动下载的crate源码,可将其拷贝到固定目录中做本地引用避免上述问题;注意,这里crate的path是以本项目Cargo.toml文件为基准的相对路径。重新build库,不再去crate.io下载或核对,断网也可以build成功。有时引用一个crate,会间接导入其他crate,需要逐个拷贝。
2024-03-17 21:37:17 966
原创 rust引用-借用机制扩展
rust自动的引用-借用机制还是有限制的,比如我们要在多次函数调用中修改参数、跨线程传递参数并发修改的场景,单纯使用引用-借用机制就不灵了。这时需要借助rust提供的Rc、Arc、Cell、RefCell对机制来扩展默认的引用借用机制。
2024-03-09 10:08:42 543
原创 rust代码组织
子目录(Crate)中的功能代码按正常方式开发好,在子目录下添加mod.rs文件,用于对外开放子目录下的功能(代码文件名(不带后缀),即模块)。注意:Rust对子目录(Crate)中的内容引用方式,需要按上面代码中注释方式进行,即:目录名称::代码文件名称(无后缀)::struct名称 as 别名。开发过程中需要按功能将代码进行拆分,放不同目录(Crate)中,如下图,将UI子页签分别定义在不同子目录下,在text_editor.rs中引用。注意:目录下有cargo.toml文件的是Package;
2024-02-13 13:58:23 527
原创 tokio tcp通信
客户端、服务端都使用TcpStream的into_split方法获取网络通信读和写实例,进而获取buffer读写对象,通过channel实现线程执行同步。子线程使用tokio::spawn函数启动。
2024-02-11 22:06:27 719
原创 DevExpress-ChartControl
Crosshair - 光标位置显示当前值的定义 可在Serial、ChartControl上定义。LabelsVisible - Serial上指定Point位置是否显示值的标签。Legend - Chart图各Serial的标识说明。Label - 坐标轴格式定义。
2023-08-07 13:47:58 252
原创 C#调用Rust dll测试
C#调用Rust dll,难点在于字符串传递,其他类型比较自然。可以给函数传递json字符串,在传出json字符串,两端通过json序列化、反序列化,可以方便处理参数数据。也可以传递不带字符串的结构体(结构体内含字符串的情况没有验证)没什么难点,直接上码:Rust:use std::thread;use libc::{c_char, uint32_t};use std::ffi::{CStr, CString};use std::str;extern crate serde;exte
2022-01-28 22:36:34 2401 1
原创 win10安装linux子系统
1、控制面板--更新和安全--勾选开发人员选项2、控制面板--应用--程序和功能(滚动到最下端可见)--启用或关闭Windows功能--适用于Linux的Windows子系统3、重启4、打开cmd命令行,输入bash,提示安装linux分发版,复制提示的网址,粘贴到IE浏览器地址栏,回车5、打开windows商店,选择ubuntu,下载、安装6、安装完毕,关掉一直悬浮在上面的等待界面--启动,输入用户名和密码,安装完毕7、安装linux服务8、设置开机自动启动:在目录<C:
2021-03-19 16:21:01 452
原创 带序列超时提示的Observale
Observable.Timeout扩展提供了序列超时的实现,但不够灵活,超时后就异常导致订阅失效。自定义的Observable更加灵活。IDisposable customerTimeoutSubscriber; private void button10_Click(object sender, EventArgs e) { var cnt = 0; var observable = Observable.Creat...
2021-02-05 14:55:49 451
原创 emqttd下载
进入https://www.emqx.cn/mqtt-->文档-->EMQ X Broker-->开始使用-->安装-->找到对应系统的安装路径-->下载对应win10的zip,解压后,进入bin目录,在命令行中执行 ./emqttd start-->在浏览器中键入http://localhost:18083,用户名admin,密码public,进入Dashboard...
2021-01-16 20:13:56 1171
原创 设计模式简化记忆
1、设计7大法则类与接口要单一,(单一原则)依赖接口要最少。(接口隔离)设计面向是接口,(依赖反转)聚合组合少继承。(里氏替换,过多的继承重写,导致里氏替换法则被破坏)扩展不改封装类,(开闭法则,新增功能不能去修改已有实现)核心目标降耦合。(开闭法则是7大法则的核心)预测变化早分离,(设计过程中预测到可能发生的变化,早做规划,将稳定功能和易变功能区别对待)改善系统扩展性。2、uml类图参数返回叫依赖,(做类的成员函数参数和返回值的其他类,构成了依赖关系)成员.
2020-11-06 12:27:11 392
原创 goland服务热重启
开发web api或web项目,修改源码后,无需手动重启即可查看效果,使用air即可实现。安装air:go get -v -u github.com/cosmtrek/air(或下载所有源码后,go build,得到air.exe,拷贝到$gopath/bin目录)在项目目录下,创建.air.config文件,修改[build]中的cmd配置,设置为goland编译程序的命令行命令:cmd = "go build -o ./tmp/beego-demo.exe ./main.go"最终配置
2020-09-28 15:55:15 1365
原创 webassmbly blazor实现多页签效果
最终效果如上图。多页签使用BlazorStrap中的BSTabGroup、BSTabList组件,内嵌绑定的BSTab:<div> <NavMenu OnShowLog="ShowLog" OnShowModel="ShowModel" /></div><div class="container"> <BSTabGroup ShownEvent="@Shown" @ref="tabGroup"> &..
2020-09-11 11:30:51 1924
原创 webassembly跨域访问
如出现如下错误:SEC7123: [CORS] 原点“https://localhost:44377”已阻止 preflight 请求,它的 Request Header “authorization”未出现在“http://localhost:12345/qry_pagition”的 cross-origin 请求的 Access-Control-Allow-Headers response header 列表中。说明请求header中含有authorization,但服务端不允许这样的heade
2020-09-11 11:12:03 1951
翻译 darknet YoloV4手册翻译
https://github.com/AlexeyAB/darknet(对象检测神经网络) – 可用于Linxu和windows的张量计算核心Yolo v4网页:https://arxiv.org/abs/2004.10934更多细节:http://pjreddie.com/darknet/yolo/必要条件(及依赖性安装)Requirements (and how to in...
2020-04-29 15:48:20 2093
原创 自动表单生成工具说明(后端、桌面、web、移动端)
功能描述:使用模型编辑工具编辑模型,每个模型对应数据库一张表,内含多个字段。 从模型生成数据库(现支持sqlite)。 从模型生成golang微服务代码,并自动进行编译。 从模型生成winform dll项目,并可自动编译、拷贝dll到模型工具同目录下、生成模型工具菜单配置文件,重启模型即可看到新的表单菜单,打开对应表单,编辑数据。 从模型生成vue项目,并可自动安装依赖,启动开发测试...
2020-02-16 00:08:10 2737 2
原创 flutter项目疑难解决--好用的连接
flutter新建项目,卡死问题解决方案https://zhuanlan.zhihu.com/p/48866181高版本安卓系统方法http urlhttps://blog.csdn.net/gengkui9897/article/details/82863966app签名https://blog.csdn.net/weixin_44567104/article/details...
2020-02-15 21:51:07 440
原创 Golang之微服务
软件开发需要分模块,通常要按逻辑进行化分,将代码组织到不同的包里,编译为dll或全部集成到exe,以单进程的方式运行;多个项目公用的代码,直接引用dll或以公共代码库的方式引入。但是,如果项目非常多,每个项目都要去考虑这些公共的功能,将依赖的包导入到项目,还是要直接面对这些代码,编译时间也非常长。为此,将模块进行物理划分,子模块直接部署为独立的进程,进程间采用http、rpc等方式通信,通信内...
2019-11-18 12:37:10 1511
翻译 使用Go的sync.ErrGroup类快速并行搜索文件
Go的主要特性之一是其强大的并发性能,如通道和goroutines。但是对于新手来说,goroutines是一个陌生的概念,新手在掌握并发概念过程中,经常遇到挫折。Go团队发布的第一个帮助管理goroutines复杂性的工具是sync.WaitGroup,创建一个WaitGroup,该WaitGroup将阻塞,直到指定数量的goroutines完成执行为止。以下是文档中的一个例子: ...
2019-11-12 12:29:15 806
原创 使用OpenCV合成训练图片,同时生成labelme兼容格式的标注文件
思路很简单,加载背景图片,加载目标图片,随机抽取N个目标图像,将目标图像的像素copy到背景图片上,拷贝的位置可根据要求指定;同时合成标注json文件。代码如下:# coding=utf-8from cv2 import cv2import osimport numpy as npimport randomfrom gen_ann_json import Annotation...
2019-11-12 09:21:07 1158 1
转载 干货 | 一文概览主要语义分割网络,FCN、UNet、SegNet、DeepLab 等等等等应有尽有
文章目录介绍 网络架构 Fully Convolution Networks (FCNs) 全卷积网络 SegNet U-Net DeepLab v1 DeepLab v2 DeepLab v3 Fully Convolutional DenseNet E-Net 和 Link-Net Mask R-CNN PSPNet RefineNet G-...
2019-11-08 21:30:24 3161
DataSnap2010白皮书翻译
2010-03-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人