问题标签 [lockup]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
399 浏览

sql-server - 由于 SPID 卡在 RUNNING、KILLED/ROLLEDBACK 状态而重新启动

我是一个新的“意外” DBA,我目前正在尝试解决由我在支持前端应用程序的生产数据库上创建的触发器引起的锁定。

我创建了一个触发器,然后我决定最好还是创建一个工作来完成这项工作,因此尝试在对象资源管理器中删除触发器。删除失败并显示以下消息:

然后我尝试手动删除它,但它在 0% 时失败,还剩 0 秒。我检查了运行时间最长的事务,然后尝试在活动监视器中终止该进程。从那时起,该过程一直停留在“任务状态:运行和命令:KILLED/ROLLBACK”。经过一番谷歌搜索后,听起来我有两个选择。

选项 1:在 SQL 服务器上重新启动 DTC.... 不起作用,仍然卡住。选项 2:重新启动 SQL 服务。哦哦。

这是我第一次不得不做这样的事情,我很紧张成为办公室里唯一的 SQL 人。请任何人都可以让我知道重新启动服务的潜在影响是什么,就数据丢失和对前端用户的影响而言?我最好在营业时间后等待重新开始吗?

谢谢,如果我第一次问这个问题很糟糕,我很抱歉。

干杯

0 投票
1 回答
301 浏览

php - Apache/PHP using 100% CPU while trying to free cache space

I created a script for use with my website that is supposed to erase the oldest entry in cache when a new item needs to be cached. My website is very large with 500,000 photos on it and the cache space is set to 2 GB.

These functions are what cause the trouble:

cachefolder() is a function that returns the correct folder name with a / appended to it.

When the functions are executed, the CPU usage for apache is between 95% and 100% and other services on the server are extremely slow to access during that time. I also noticed in whm that cache disk usage is at 100% and refuses to drop until I clear the cache. I was expecting more like maybe 90ish%.

What I am trying to do with the cache_tofile function is attempt to free disk space in order to create a folder then free disk space to make the cache file. The cache_space_make function takes one parameter representing the amount of disk space to free up.

In that function I use system calls to try to find the oldest file in the directory tree of the entire cache and I was unable to find native php functions to do so.

The cache file format is as follows:

For example, if one requests http://www.example.com/abc/def then from both functions, the folder that is supposed to be created is abc and the file is then def so the entire file in the system will be:

If one requests http://www.example.com/111/222 then the folder 111 is created and the file 222 will be created

Each file in both cases contain the same content as what the user requests based on the url. (example: /cacherootfolder/111/222 contains the same content as what one would see when viewing source from http://www.example.com/111/222)

The intent of the caching system is to deliver all web pages at optimal speed.

My question then is how do I prevent the system from trying to lockup when the cache is full. Is there better code I can use than what I provided?

0 投票
0 回答
178 浏览

vba - 使用 excel vba 进行表格编辑导致崩溃和单元格锁定

我制作了一个用户表单,允许用户选择一个表并向其中添加行,并用各种信息填充这些行,所有这些都来自用户表单。我遇到了一些问题。

首先在添加项目之后或在添加项目期间(点击提交后)excel会崩溃。它是随机发生的,很难重现。

其次,在运行宏之后,很有可能工作簿中的所有单元格和除用户窗体按钮之外的所有其他对象都将停止工作,这意味着您无法编辑交互甚至选择任何内容。然后当我关闭工作簿时,保存后excel崩溃。这是我的主要罪犯,我认为会导致另一个问题。

是什么导致了这种冻结,为什么会发生?我如何解决它?我环顾四周,没有发现任何间接情况。一篇文章说我应该尝试在没有格式的情况下编辑表格,但我这样做了,但它没有用。

我可以通过 pm 应要求提供 excel 工作簿。

问题用户表单

编码:

激活时 -

帮助复选框 -

品牌组合框 -

CleanBrandTableName(brandTableName) 函数 -

浏览按钮 -

bFile 函数 -

预览按钮 -

添加项目按钮 -

提交按钮 -

删除项目按钮 -

还有其他代码可以为其他选项卡执行操作,但它们不与此选项卡代码交互。

0 投票
0 回答
291 浏览

ios - 选择了表格单元格但 didSelectRowAt indexPath 有时不会执行并导致锁定?

[编辑]:我想我已经解决了锁定问题。在将退出准备工作重构didSelectRowAt为 ping 异步队列中的阻塞任务时,我注意到成功的转换将包括一次瞬时移动到 rootVC,然后再次动画转换到 rootVC。让我意识到我的 tableVC 有两个 segue:一个是控制器 segue 的通用控制器(这是预期的 segue 方法),另一个是选择表格单元格。

我不确定是否只是删除了额外的 segue 或多个尝试的解决方案的组合以及解决了问题的 segue 的删除。我的猜测是后者,因为记忆告诉我,曾经有一段时间只有一个 segue 并且“修复”也不起作用。

tl;dr:确保你没有竞争的 segues 并且你的异步代码是线程安全的/有适当的清理。

[问题]:

我有一个 TableViewController,它是导航控制器下 rootVC 的子 VC。换句话说,NavController[rootVC, tableVC]。

该应用程序在 rootVC 中启动,并通过 UIButton 连接到 tableVC。在 tableVC 的 viewDidLoad 处,如果之前没有完成之前的扫描,则完成网络扫描。网络上的设备在被发现时会在某个端口异步 ping。如果这些 ping 成功,则与设备关联的 IP 地址用于填充表格视图中的单元格。如果选择了此单元格,则会通过 didSelectRowAt indexPath 更改某些应用程序设置,并执行展开转场以返回到 rootVC。viewWillDisappear 也用于通过 isMovingFromParentViewController 传递值(之前通过准备 segue 完成,但也存在错误)。用户可以在 IP 地址单元格出现在表视图中时立即选择它,这是预期的设计。

该功能一切正常。大多数时候。但是,在未完成扫描的情况下选择了一个单元格后,应用程序有时会在选择一个单元格后锁定(这意味着仍然可能有异步 ping 发生/排队)。我在 didSelectAtRow 的开头有一个打印,当锁定发生时永远不会发生。我在表格视图中还有一个活动指示器视图,当其他一切都没有响应时,它会继续旋转。Xcode 方面没有崩溃或中断。似乎 didSelectAtRow 只是没有发生并且由于某种原因无法继续。

这就是我的 didSelectAtRow 的样子

注意 lanScanner 是 MMLanScan 的一个实例

我的新手知识让我猜测这是由于我的异步 ping(ping 结果是控制台上显示的最后内容)。当在 LAN 上找到设备时,会发生异步功能。它被封装在这样的函数中:

注意 possibleDevices 有一个调用 reloadData 的 didSet 属性观察器。

起初我认为它只发生在单元格选择中(即 NavCon's Back 工作正常)。所以我以编程方式调用视图的弹出,但无济于事。我尝试通过 NavCon 的后退按钮重现锁定,并且能够做到一次。

我不确定哪些代码与共享相关,所以如果您需要更多信息,请告诉我。

谢谢!

0 投票
0 回答
2578 浏览

arm - STM32如何从锁定中恢复

我正在尝试与 SMBus 电池通信。那有 2 个部分,所以我使用 2 个 I2C 模块。在第一个 I2C 模块成功通信后,第二个模块卡住了。它卡在忙碌中。在那种情况下,我认为我需要重置该 I2C 模块。但是,我做不到。

我尝试了以下方法:

1)通过使用HAL库deiniting然后再次初始化模块:

2)在第一种方法中添加 Swrst 行:

3)

4)使用勘误文件和这行代码:

STM32中的I2C模块有没有合适的方法复位?如何从锁定中恢复?

编辑:我正在使用 STM32F103C8。现在我添加了 MX_GPIO_Init 函数,我可以重置模块:

但是传输中的第二个模块总是失败。如果我先使用 hi2c1 然后 hi2c2 然后 hi2c2 失败。如果我先使用 hi2c2 则反之亦然。我试图禁用第一个模块,然后尝试与第二个模块通信,但这也不起作用。