如何在Linux上的C语言中编写一个简单的WatchDog Timer?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了如何在Linux上的C语言中编写一个简单的WatchDog Timer?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1318字,纯文字阅读大概需要2分钟。
内容图文
![如何在Linux上的C语言中编写一个简单的WatchDog Timer?](/upload/InfoBanner/zyjiaocheng/948/9fb04e7aeb3d4a078b25b1b66c1203aa.jpg)
TCP KEEPALIVE计时器的默认持续时间为2小时.
知道TCP连接/套接字尽快关闭的最佳实践是什么-
>实现WatchDog计时器是最好的方法吗?
>如何实现WatchDog计时器呢?
我已经进行了相当广泛的浏览(可能是我使用了错误的搜索参数),但是我还没有看到针对Linux GPOS的任何此类实现,我所看到的只是基于硬件的嵌入式系统计时器,这取决于硬件.
通常,在检测到套接字/连接已失效后该怎么办.
>您只关闭socket_descriptor吗?
>关闭socket_descriptor是否释放与该连接关联的所有内核资源?
>如何释放与用户空间关联/分配的所有资源?你写例程了吗?如果是,您如何跟踪在用户空间中分配的资源?
解决方法:
无法检测到TCP连接“ ASAP”已死.如果另一端的主机已死,则它不再参与TCP连接对话框,并且唯一的通知方式是连接超时.
您可以减少套接字上的保持活动时间,以更早地“通知”问题,但这通常不是一个好的解决方案.
如果要监视主机,请以适合您的频率发送简短的“ ping”消息.如果另一侧在给定的间隔内没有应答,则可以将其声明为“已死”.
一旦发现连接中断,关闭套接字就足以释放与该套接字关联的所有内核资源.
如果您还分配了其他资源(例如会话信息),则还需要释放这些资源.为此,编写一个函数(并在建立连接时分配这些资源)确实是个好主意,以便所有簿记工作都在同一地点并且易于检查.
如何跟踪分配的资源完全取决于您.在一个结构中保存对所有“待释放”资源的引用,然后将该结构保存在链接列表或哈希(例如由套接字fd索引)中,可以很好地解决问题.
(无论如何,在Linux中,“看门狗定时器”一词用于硬件监视设备.这不是搜索与网络/ TCP相关的东西的好术语.)
内容总结
以上是互联网集市为您收集整理的如何在Linux上的C语言中编写一个简单的WatchDog Timer?全部内容,希望文章能够帮你解决如何在Linux上的C语言中编写一个简单的WatchDog Timer?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。