草庐IT

c# - 是否可以编写看门狗进程来捕获应用程序崩溃?

我们正在开发一款视频游戏,几乎没有错误,就像任何应用程序一样,错误有时会导致硬崩溃。不幸的是,由于我们使用的是封闭源代码中间件(Unity3D),到目前为止我们编目的许多崩溃都超出了我们的控制范围,无法解决或解决它们。虽然我们可以希望并等待中间件开发人员解决问题,但我们想看看是否有可能至少让崩溃信息更丰富和用户友好。例如-我们的用户可能遇到的罕见崩溃之一是某些AV产品导致某种线程上下文竞争条件并导致游戏爆炸。我们希望能够检测到崩溃和错误签名,并向用户提供指向我们的wiki或论坛的链接,以了解如何解决它(如果可能)。是否可以编写一个轻量级的看门狗进程或父进程来响应Windows平台上的崩

Java看门狗监控

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭9年前。Improvethisquestion我正在尝试用java(windows和linux)开发一个看门狗,它将以两种方式运行:1)被动监测。进程完成工作后,看门狗需要检查进程完成的返回值。(退出(1),退出(0)...)2)主动监控。进程每隔interval(x)就需要“touch”一个属于自己的文件。如果进程通过检查文件戳“触摸”他的文件,看门狗将检查每个时间间隔(y)。如果进程没有接触文件,看门狗将尝试向接触文件的进程发送信号。主动监控的目

java - 如何保护 java 中的方法(溢出等)

我必须用Java编写一个“看门狗”,它确保线程不会执行太长时间。对象的初始化没问题,我创建了一个类,它调用WatchDog和在run()方法中使用反射的构造函数。一个线程很容易停止,但我如何才能保护对象的正常方法呢?例如,我调用一个对象的方法,这个方法执行无限循环,你会怎么做?谢谢 最佳答案 首先,我应该指出停止一个线程不容易。事实上,在一般情况下,线程是无法安全停止的:您可以在要停止的线程上调用Thread.interrupt(),但不能保证线程会注意到中断,更不用说真正停止了。您可以调用已弃用的Thread.stop()方法,但

ARM day7 day8 UART串口、PWM蜂鸣器、WDT看门狗、ADC数模转换

一、串口编程   1.看原理图      GPA1_0:RXD2      GPA1_1:TXD2   2.看芯片手册      1)对外设置(GPIO)         GPA1CON:0x11400020 3:0->0x2(RXD2) 7:4->0x2(TXD2)      2)对内设置(uart)         ULCON2:0x13820000 0x3         UCON2: 0x13820004 1:0->01(polling) 3:2->01(polling)         UTRSTAT2:0->1(readyread) 1->1(发送完成)         UBRDI

嵌入式培训机构四个月实训课程笔记(完整版)-Linux ARM驱动编程第二天-ARM中断、定时器、看门狗(物联技术666)

链接:https://pan.baidu.com/s/1E4x2TX_9SYhxM9sWfnehMg?pwd=1688提取码:1688上午:中断         吕峰老师下午:定时器教学内容:一、中断ARM中断分为二级,分为一级中断和二级中断,二级中断为子中断,对于ARM来说有50个中断源,其中有32+(EINT23-4)23-4+1-2=50子中断源分为二种,一种是内部子中断,另一种是外部子中断源(EINT4_7,EINT8_23)内部子中断:一般是串口的读写,视频的中断,AC中断等等,主要是内部硬件设备外部子中断:一般是EINT4_7,EINT8_23,分别是GPF和GPG的I/O口。中断

Redisson看门狗机制

一、背景网上redis分布式锁的工具方法,大都满足互斥、防止死锁的特性,有些工具方法会满足可重入特性。如果只满足上述3种特性会有哪些隐患呢?redis分布式锁无法自动续期,比如,一个锁设置了1分钟超时释放,如果拿到这个锁的线程在一分钟内没有执行完毕,那么这个锁就会被其他线程拿到,可能会导致严重的线上问题。既然存在锁过期而任务未执行完毕的情况,那是否有一种可以在任务未完成时自动续期的机制呢,几年前在redisson中找到了看门狗的自动续期机制,就是解决这种分布式锁自动续期的问题的。Redisson锁的加锁机制如上图所示,线程去获取锁,获取成功则执行lua脚本,保存数据到redis数据库。如果获取

STM32---IWDG(独立看门狗),超详细,小白入

写在前面:本节我们学习STM32中一个很有趣的东西——看门狗,其实在我上大学的时候,当时还没有系统学习STM32的时候,就听到过看门狗这个词语,当时老师上课不断在说看门狗,只是觉得很有意思。但是没有真正了解过,今天同大家一起学习看门狗的内容。看门狗并不难,大家跟着我的思路学习即可。一、IWDG简介IWDG全称(Independentwatchdog)独立看门狗。本质:一个能够产生复位信号的计数器。那么什么是复位信号呢?复位就是使MCU回到初始状态。对于单片机来说,开机的时候需要复位,以便使得CPU和其他功能部件处于一个正确的初始状态,并以此为起点开始工作,当出现死机的情况也应当对其进行复位,用

STM32CubeMX教程24 WDG - 独立窗口看门狗

1、准备材料开发板(正点原子stm32f407探索者开发板V2.4)STM32CubeMX软件(Version6.10.0)野火DAP仿真器keilµVision5IDE(MDK-Arm)ST-LINK/V2驱动XCOMV2.6串口助手逻辑分析仪nanoDLA2、实验目标使用STM32CubeMX软件配置STM32F407开发板的独立看门狗(IWDG)和窗口看门狗(WWDG)并了解其功能实现3、WWDG实验流程3.0、前提知识STM32F407拥有两个看门狗,分别为独立看门狗和窗口看门狗,这两个看门狗的作用都是监控程序运行,程序死机或跑飞就使系统复位,值得注意的是,一旦开启看门狗就无法停止,除

STM32-窗口看门狗WWDG剖析与实例

窗口看门狗窗口看门狗WWDG简介        窗口看门狗(WWDG)通常被用来监测由外部干扰或不可预见的逻辑条件造成的应用程序背离正常的运行序列而产生的软件故障。除非递减计数器的值在T6位(WWDG->CR的第六位)变成0前被刷新,看门狗电路在达到预置的时间周期时,会产生一个MCU复位。在递减计数器达到窗口配置寄存器(WWDG->CFR)数值之前,如果7位的递减计数器数值(在控制寄存器中)被刷新,那么也将产生一个MCU复位。WWDG的特性可配置的时间窗,用来检测应用程序非预期中的运行流程(过早或过晚)看门狗复位条件计数器值=0x40产生早期唤醒中断(EWI)WWDG的特性①使能了看门狗

ios - 如何在不被看门狗杀死的情况下进行冗长的操作? iPhone

我有一个很少执行的重要操作。在某些情况下,执行可能需要几分钟。我的应用程序在50秒操作后被杀死。如何避免这种情况?我应该把它放在后台线程吗?谁能在这里指出我正确的方向。我还没有找到任何关于所谓的看门狗的有用信息。后台线程是可行的方法吗? 最佳答案 是的,您需要将此任务移至后台线程。您永远不应该用任何执行时间超过几分之一秒的任务来阻塞主线程。忽略只在极端条件下启动的看门狗定时器,在这个冗长的操作过程中,您的应用程序对触摸或其他事件完全没有响应,并且您无法向用户提供有关此操作进度的反馈。看门狗定时器会杀死一个应用程序,它会在极长的时间内