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算法)。五年工作经验的性价比最高的点:分工(概要设计师、开发组长)。之后是团队建设(部门经理)、利益分配(总监)。根本没多少精力分配到开发工具(开发语言、类库)、基础算法(树桩数组、动态规划)、通用知识(文字编码、文件格式)。

相关推荐
Pomelo_刘金10 天前
Rust : 无法通过 Cargo 拉取私有代码仓库解决方式 failed to load source for dependency
rust·debug
EniacCheng16 天前
【Vulkan入门】04-开启Debug输出
debug·vulkan
John_Snowww18 天前
6.824/6.5840 Lab 1: MapReduce
mapreduce·debug·6.824·6.5840
小小工匠23 天前
Maven - 优雅的管理多模块应用的统一版本号
maven·版本号·多模块
AI原吾24 天前
探索 Python 任务自动化的新境界:Invoke 库揭秘
开发语言·python·自动化·invoke
Swift社区25 天前
工具与技术在 Debug 中的应用
前端·typescript·debug
写点什么啦1 个月前
[debug]不同的window连接ubuntu的vscode后无法正常加载kernel
linux·vscode·ubuntu·debug
极客先躯1 个月前
高级java每日一道面试题-2024年11月06日-JVM篇-什么是 Class 文件? Class 文件主要的信息结构有哪些?
java·常量池·版本号·class文件·魔数·访问标志·jvm篇
mingshili1 个月前
[python] 如何debug python脚本中C++后端的core dump
c++·python·debug
AI原吾1 个月前
探索Python自动化新境界:Invoke库的神秘面纱
开发语言·python·自动化·invoke