避免二次运行(B2)、任务计划、AutoClose

限时加码!20+主流AI编程工具免费用 购周边加赠Coding Plan Lite,Claude Code、Cursor等即刻畅享,学习进阶更高效! 阅读详情

监控程序受重视的程度远不如收费系统内的程序,尤其是在下级机构——分中心、监控所等等。监控员通常是在需要发布信息或者采集信息的时候才会打开软件,用完了就关掉了。即使经过多次强调,但仍有人会习惯性地或者不经意地把监控程序给关掉了。监控程序关掉了,就无法采集车检器、气象仪的原始数据了,此外,也无法与上级监控软件进行通讯了。因此,收费软件不间断地运行靠的是管理机制、行政手段,监控软件要想不间断地运行,就需要借助一些技术技巧了。

一些软件,跟采集设备没有关系的,例如通讯软件、省中心的软件,只需要加入避免二次运行(B2)、任务计划自启动功能即可。不过,一般的没有加入B2的程序,最简单的TForm的Application,在任务计划添加之后,似乎天生就具备了B2功能,加入了“B2”,则更保险了。这个问题就算解决了。

不过有些监控软件,例如哈伊的监控软件,长时间运行之后,似乎就麻木了似的,采集不上来车检器的数据了(气象仪坏掉了,压根就采不上来)。不过,程序重启一下,马上就又有数采上来了。因此,对于这样的软件,还需要在计划任务的基础上,加入一个自动关闭的功能。

开始的做法是把B2中的PostMessage(Handle, CM_Restore, …)换成SendMessage(Handle, WM_Close, …)。这么一来,在普通情况下,新运行的程序的确会把以前运行的实例先关闭后,再运行自己——就是一个置换、取代的过程。但加入计划任务以后,似乎并没有起到预期的效果,以前的实例仍在运行,新实例并未启动,看起来似乎是“天生B2”的情形,怎么试都不好使。

于是只好另辟蹊径,单独编写了一个小程序,主要的工作就是向一个具备指定特征的实例(即,以前运行的实例)Send WM_Close消息,然后它自己立即结束自己。这个方法比较奏效,在计划任务中,都加入这两个程序,运行的时间间隔一样,AutoClose先自动执行,监控软件再过一分钟也自动执行,这样,由于前一分钟AutoClose会把以前的实例关闭,而监控软件自身又具备自身和天生的B2功能,这样就可以不间断地运行了。

ToolJet Exposed Variables(暴露变量)实战指南:用 `{{components.*}}` 实现组件间的动态数据联动 Exposed Variables(暴露变量)是 ToolJet 低代码应用中组件与数据互通的桥梁:每个组件在运行时都会自动暴露一组变量,用于承载用户输入、可见状态、选中结果等实时数据。本指南以 ToolJet 2.50.0-LTS 版本为背景,系统讲解暴露变量的概念、`{{components.textinput1.value}}` 这类访问语法、常见组件的变量清单,并结合仓库源码剖析其自动创建 阅读详情

相关推荐

深入autoclose.nvim源码剖析:165行Lua如何实现智能括号自动闭合

autoclose.nvim 是一个极简主义的 Neovim 括号自动闭合插件,100% 纯 Lua 编写。整个插件只有一个 165 行的源文件 `lua/autoclose.lua`,却完整实现了**自动闭合、自动删除、自动逃逸、自动缩进**四大智能功能。本文带你逐块读懂它的源码设计,看完你会惊讶于"极简"的力量。 ## 📁 项目结构一览:一眼看清全貌 这个项目干净得令人舒适,核心内容就

gitblog_00972的博客 834

Neovim expr映射实战:autoclose.nvim自动闭合括号插件handler函数完整拆解指南

autoclose.nvim 是一个极简的 Neovim 自动闭合括号插件,全 Lua 编写,不到 200 行代码就实现了自动配对、自动删除、自动逃逸和自动缩进四大功能。本文带你逐行拆解它的核心 `handler` 函数,看它如何巧妙利用 **expr 映射**(表达式映射)让一次按键返回一整个"按键序列",是学习 Neovim Lua 插件开发的绝佳范本。 ## 一、什么是 expr 映射?3

gitblog_00406的博客 322

避免Autoclose和Autoshrink选项

避免Autoclose和Autoshrink选项发布日期:2001年12月18日 问题:我在Microsoft SQL Server 2000资源工具包中读到了一个用于就应当避免使用的选项对所有数据库进行检查的存储过程。我能够理解为何应当避免使用诸如脱机、仅供DBO使用、关闭统计信息、从检查点截断日志信息这样的选项。然而,其中所包含的两个选项——autoclose和autoshrink——则令我...

weixin_30432007的博客 223

VIM插件AutoClose

http://vim.sourceforge.net/scripts/script.php?script_id=1849使用这个插件可以打入快速输入括号,引号等,避免出错。安装很简单,copy到plugin目录。\a 关闭这个特...

213

Flutter 组件 autoclose 适配鸿蒙 HarmonyOS 实战:高性能资源自动释放,构建内存安全治理与生命周期资产一致性架构

在鸿蒙(OpenHarmony)生态迈向“极致性能优化、严苛资源管控”的演进过程中,涉及复杂的由于由于异步流订阅、大规模控制器管理及严苛的由于由于由于由于内存泄露风险背景下,如何实现一套既能由于由于高性能地追踪资源分配、又能保障在组件销毁时执行“由于由于由于由于毫秒级且无感”的自动关闭且具备全生命周期审计能力的“资源回收中心”,已成为决定应用运行稳定性与系统流畅度的关键。在鸿蒙分布式架构中,常涉及由于由于由于界面由于由于由于由于异步任务由于由于由于挂起的场景,如果应用依然采用原始的由于由于手动调用。

lady_mumu的博客 3595

打印前先看成品:Octolapse快照计划预览功能使用指南

Octolapse 是 OctoPrint 生态中最受欢迎的**3D打印延时摄影插件**之一,它能让你的打印过程拍出稳定、专业的延时视频。而在正式打印之前,Octolapse 还提供了一个非常实用却常被新手忽略的功能——**快照计划预览(Snapshot Plan Preview)**。通过它,你可以提前看到相机将在哪些位置、以什么路径拍摄每一张照片,相当于"打印前先看成品"。本文就带你全面掌握

gitblog_00865的博客 401

uniapp安卓启动图

androidTranslucent:这个属性非常关键。将其设置为 true,可以使启动页在完全准备好之前不显示系统默认的白色背景或APP图标,从而实现从启动图到首页内容的平滑过渡,避免“闪屏”现象。autoclose:建议设为 true,以便在应用初始化完成后自动关闭启动页。你还可以在首页的 onLoad生命周期函数中使用 setTimeout精确控制启动页显示时长,例如显示3秒后跳转。waiting:若设为 false,则不会在启动图上显示默认的加载旋转图标;若希望有加载动态效果,可设为 true。

alisande1的专栏 355

Java 自动资源管理工具类示例

Java 自动资源管理工具类示例

Leon_Jinhai_Sun的博客 684

leaflet使用笔记&报错

一、笔记 (1)打开多个popup leaflet默认打开一个popup会关闭另一个,设置autoClose: false即可默认打开多个;同时还可以设置closeOnClick:false (2)显示多个marker 直接多次添加marker即可。如果看不到多个可能是各个点之间的距离太大所以地图上没显示出来_(:з」∠)_ 二、报错 (1)Error: Attempted...

xxtz0522的博客 3056

GitHub MCP Server 本地 Docker 登录如何固定 8085 OAuth 回调端口?

在 Docker 容器里运行 GitHub MCP Server 的本地 stdio 版本、并希望通过浏览器 OAuth 登录(而不是自己创建 PAT)时,会碰到一个具体问题:OAuth 的授权码流程依赖一个回环(loopback)回调服务器,而容器无法够到宿主机上的随机端口。解决办法是把回调端口固定下来并 publish 进容器。官方构建的镜像 `ghcr.io/github/github-mc

gitblog_00879的博客 698

Qwerty Learner 快速上手指南:3步装好并跑通第一个打字练习

如果你打中文很快、打英语却常常卡壳,或者背过的单词一上键盘就想不起拼写,Qwerty Learner 就是为你准备的。它是为键盘工作者设计的单词记忆与键盘肌肉记忆训练工具:看到单词、敲出单词,英语输入的肌肉记忆就随之巩固。本指南带你用 3 步在本地装好它并跑通第一个练习。 ## 确认你的环境是否就绪 开装前花 10 秒确认机器上有这 3 个工具。在终端依次执行下面的命令,每条都应输出版本号:

gitblog_00628的博客 977

Kubernetes 多架构支持平台(Platforms)完整指南:从新增构建、测试、发布到弃用移除

本文档是 Kubernetes 社区为“新增 / 移除受支持构建平台(supported platform)”制定的官方操作指南,适用于 SIG Architecture 与 SIG Release 视角下的平台生命周期管理。读完本文你将掌握:如何在社区层面发起平台支持提案(lazy consensus)、如何为 `arm` / `arm64` / `ppc64le` / `s390x` 等架构补

gitblog_00229的博客 325

Uniapp 手动关闭启动页的Splash图

当我们做uniapp项目时,需要做后端控制显示版本,如果使用组件切换实现时就会出现版本UI切换太明显的情况,此时我们可以利用启动页动画的手动关闭的方式进行一个暂时的遮挡,等页面切换完成之后再让启动页关闭,首先进入。做完上述步骤后,直接在代码逻辑中使用以下代码进行关闭启动页动画。等待首页渲染完毕后再关闭Splash图。

m0_66675766的博客 4208

SQL2000: Auto Shrink/Close setting

SQL2000: Auto Shrink/Close setting 问题:我在Microsoft SQL Server 2000资源工具包中读到了一个用于就应当避免使用的选项对所有数据库进行检查的存储过程。我能够理解为何应当避免使用诸如脱机、仅供DBO使用、关闭统计信息、从检查点截断日志信息这样的选项。然而,其中所包含的两个选项——autoc...

weixin_30851409的博客 295

掌握Micro文本编辑器:终极插件与主题自定义指南

Micro是一款现代化且直观的终端文本编辑器,它结合了简洁的界面与强大的功能,让你在命令行环境中也能享受高效的编辑体验。无论是编程开发还是日常文本处理,Micro都能通过丰富的插件和主题自定义,满足你的个性化需求。 ## 🚀 初识Micro:终端里的现代编辑器 Micro的设计理念是"简单易用但不简陋",它默认提供了语法高亮、代码折叠、多光标编辑等实用功能,同时保持了终端工具特有的轻量与高效

gitblog_01009的博客 1121

掌握Toastification的show()方法:轻松实现多样化提示消息

Toastification是一款强大的Flutter提示消息组件,它提供了灵活的show()方法,让开发者能够轻松创建和管理各种类型的提示消息。无论是成功提示、错误警告还是自定义通知,show()方法都能满足你的需求,为应用增添专业的用户反馈体验。 ## 为什么选择Toastification的show()方法? Toastification作为Flutter生态中备受欢迎的提示消息解决方案

gitblog_01047的博客 433

5分钟掌握micro自动补全:从入门到效率翻倍

你还在为终端编辑器中频繁输入长文件名、重复代码而烦恼吗?作为一款现代化终端文本编辑器,micro(项目路径)内置的自动补全功能能让你的编辑效率直接翻倍。本文将通过5分钟实操教学,带你掌握文件路径补全、代码单词补全和括号自动闭合三大核心技能,彻底告别重复劳动。 ## 自动补全功能概览 micro的自动补全系统由两大核心模块构成:基础补全引擎和语法增强插件。基础补全功能在[internal/buf...

gitblog_00417的博客 345

listhen 优雅关闭完全手册:SIGINT/SIGTERM信号处理与服务器资源清理

**listhen** 是一个优雅(Elegant)的 Node.js HTTP 服务器监听库,除了帮你快速启动 HTTP/HTTPS 服务外,它还内置了**优雅关闭(Graceful Shutdown)**机制:当进程收到 `SIGINT`、`SIGTERM`、`SIGHUP` 信号或 `exit` 事件时,会自动安全地关闭服务器连接、清理隧道等资源,避免请求被粗暴中断、端口"卡死"。本文将从信

gitblog_00257的博客 909

终极micro插件验证指南:5步确保编辑器扩展正确运行

micro是一款现代化的终端文本编辑器,以其直观的界面和强大的插件系统而闻名。插件安装验证是确保micro编辑器扩展功能正常运行的关键步骤,本指南将为您详细介绍完整的验证流程。🎯 ## 🔍 为什么插件验证如此重要 插件验证能帮助您确认插件是否正确安装、配置和运行。许多用户在安装插件后遇到问题,往往是因为缺少了验证环节。通过系统性的验证,您可以: - 避免插件冲突导致的编辑器崩溃 - 确保

gitblog_00534的博客 436
上一篇: Bridge_U was compiled with a different version of DBGridEh.TDBGridEh
下一篇: Delphi.Net还是没有把Windows底层的东西研究明白!
ACDSeeQ
博客等级 码龄21年 10粉丝 24原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值