2023年7月工作经历二

invoke的翻译

C#的这个关键字很熟,但不知道如何翻译比较好。和网友沟通,并查阅多篇博文,觉得"同步调用(invoke)和异步调用(beginvoke)"比较好。

VS2022很爽

C#的类名,会提示命名空间。C++调试的时候,可以看到向量元素的值。C++的宏桀骜难懂,尤其是多层嵌套的时候,VS2022有"展开内联"功能可解决此问题。VS选中一个变量,其它处的此变量也会高亮显示。VS2022选中v[i] 只高亮v[i]。

读取文件是否能线程加速

测试多次,读取同样的两个文件,同样的电脑。

休眠500ms 读取二进制文件 Halcon的HImage的Read

单线程依次操作 约1000ms 100ms 2600ms左右

多线程 约500ms 100ms 5000ms左右

稳定性 非常稳定 用时非常不稳定,时高时低 用时较稳定

小结 有效 几乎无效 负作用明显

线程加速对读取文件无效,可能原因读取文件的瓶颈是:硬盘的转动速度。多个硬盘多线程也许有效。

HImage和HRegion

前家公司习惯用HObject,这家公司习惯用HImage和HObject。显然后者可理解性更强。用HObject的话,每次都需要区分那个是图形,那个是区域。

发布Debug版给客户

C++发布Debug(调试)版给客户,有两个问题:一,低版本VC(比如VC6)的Debug版的dll和Release版不同。所以Debug版,在客户那使用不了。二,断言影响客户使用。C#只有第二个问题。很多程序员不使用断言,那发布Debug版确实没问题。

调试版和发布版分开的优点:一,调试版显示调试、测试功能,发布版隐藏。二,

调试版不需要加密狗,发布版需要加密狗。

修改C#程序版本号无效

按以前的方式修改C#程序的版本号,总失败。原因是AssemblyFileVersion影响二进制文件的产品版本号和文件版本号。AssemblyVersion不影响。之前总是两者一起修改的。

C++的产品版本号和文件版本可以不同。版本号由4部分组成,原以为每部分都是0到99,用C#和C++试验了,都可以是65535,不能是65536,就是uint16的范围吧。

所以可以版本号第一位是年,第二位是月,第三位是日,第四位是编号。

视觉软件工程师需要老程序员支援

一年经验的视觉软件工程师,性价比最高的点是:铺战线(简单的业务和简单的硬件知识)。三年工作经验性价比最高的是:攻坚(深耕halcon算法)。五年工作经验的性价比最高的点:分工(概要设计师、开发组长)。之后是团队建设(部门经理)、利益分配(总监)。根本没多少精力分配到开发工具(开发语言、类库)、基础算法(树桩数组、动态规划)、通用知识(文字编码、文件格式)。

相关推荐
gc_22994 天前
测试ASP.NET Core的WebApi项目调用WebService
webapi·vs2022·webservice
zmc@1 个月前
从MacOS goland无法debug到dns无法解析localhost
macos·golang·debug
G果2 个月前
matlab 小数取余 rem 和 mod有 bug
matlab·debug·rem·mod·取余
计算小屋2 个月前
Linux 安装 GDB (无Root 权限)
linux·c语言·debug·gdb
tekin2 个月前
vue项目源码调试方法 ,chrome调试控制台工作区使用,利用chrome控制台调试vue项目源码的方法 图解
前端·javascript·chrome·webpack·vue·node·debug
理想还很年轻!2 个月前
多表联合的查询(实例)、对于前端返回数据有很多表,可以分开操作、debug调试教程
debug·多表联合查询的实例·分开操作复杂的东西
Feel_狗焕2 个月前
Linux下GDB调试一篇入魂(GDB调试详解)
linux·debug
风也温柔☆3 个月前
eclipse断点调试(用图说话)
java·eclipse·debug
西木九3 个月前
VScode Python debug:hydra.run.dir 写入launch.json
vscode·python·debug·hydra
FINAL_NO3 个月前
IDEA-远程debug
jvm·intellij-idea·debug·远程