locking相关内容

java中的偏向锁定

我一直在阅读有关偏向锁定如何使用标志 -XX:+UseBiasedLocking 可以提高非竞争同步性能的文章.我找不到关于它的作用以及它如何提高性能的参考. 谁能解释一下它到底是什么,或者可能指向一些可以解释的链接/资源? 解决方案 本质上,如果您的对象仅被一个线程锁定,JVM 可以进行优化并将该对象“偏置"到该线程,以便后续对象上的原子操作不会产生同步成本.我想这通常适用于过于保 ..
发布时间:2022-01-16 12:34:15 Java开发

强制 MS Access 检索所有 ListBox 行并释放锁

我有一个列表框,其中的 RowSource 绑定到附加的 SQL Server 表.如果表很大,Access 不会加载完整的结果集,而是创建一个服务器端游标并在列表框向下滚动时“按需"加载数据.这是一个不错的功能,因为它允许列表框和组合框快速显示结果. 但是,这会在表上创建一个共享锁,即在拥有列表框的用户一直向下滚动并释放锁之前,其他用户不能插入新行.这是 已知问题. 为了避免这个问题 ..
发布时间:2022-01-16 11:11:11 数据库

Java 阻塞问题:为什么 JVM 会阻塞许多不同类/方法中的线程?

更新:这看起来像是内存问题.一个 3.8 Gb 的 Hprof 文件表明,当这种“阻塞"发生时,JVM 正在转储其堆.我们的运营团队看到该站点没有响应,进行了堆栈跟踪,然后关闭了该实例.我相信他们在堆转储完成之前关闭了该站点.日志中没有错误/异常/问题证据——可能是因为 JVM 在生成错误消息之前就被杀死了. 原始问题我们最近遇到了一个应用程序出现的情况——对最终用户来说——挂起.我们在应用 ..

跨集群共享 Java 同步块,还是使用全局锁?

我有一些代码只允许一个线程访问.我知道如何使用 synchronized 块或方法来完成此操作,但这是否适用于集群环境? 目标环境为 WebSphere 6.0,集群中有 2 个节点. 我感觉 synchronized 行不通,因为每个节点上的应用程序的每个实例都会有自己的 JVM,对吧? 我在这里尝试做的是在系统启动时对数据库记录进行一些更新.它将查找比代码版本更旧的任何数据库 ..
发布时间:2022-01-14 22:03:57 Java开发

Android - 激活系统键锁(又名锁屏)

我必须激活 android 的系统键锁(当你按下 power off/hang up 按钮时得到的那个).见这里: 我已经浏览过文档,但我发现的都是 PowerManager和 KeyguardManager.两者似乎都不是解决方案:-(. 那么,每个人都知道如何通过 android 应用程序实现这一点吗?(如果需要特殊权限,那没问题,但更改设备的设置不是解决方案......) ..
发布时间:2022-01-13 22:57:58 Java开发

基于 Futex 的锁定机制

有人可以告诉我一个使用基于 futex 的锁定机制的例子吗?(适用于多核 x86 CPU、CentOS) 解决方案 Pthreads 的互斥锁是在最新版本的 Linux 上使用 futexes 实现的.Pthreads 是 Linux 上的标准 C 线程 API,并且是其中的一部分Posix 标准,因此您可以轻松地将程序移植到其他类 Unix 系统.除非您有非常特殊的需求,否则您应该避免直 ..
发布时间:2022-01-13 21:43:43 服务器开发

Python 中的 ProcessPoolExecutor 和 Lock

我正在尝试将 concurrent.futures.ProcessPoolExecutor 与 Locks 一起使用,但出现运行时错误.(如果相关,我正在使用 Windows) 这是我的代码: 导入多处理从 concurrent.futures 导入 ProcessPoolExecutor进口时间def f(i, 锁):带锁:打印(我,'你好')时间.sleep(1)打印(我,'世界')定 ..
发布时间:2022-01-12 13:10:45 Python

python多处理:写入相同的excel文件

我是 Python 新手,我正在尝试将五个不同进程的结果保存到一个 excel 文件中(每个进程写入不同的工作表).我在这里阅读了不同的帖子,但仍然无法完成,因为我对 pool.map、队列和锁非常困惑,而且我不确定这里需要什么来完成这项任务.到目前为止,这是我的代码: list_of_days = [“2017.03.20"、“2017.03.21"、“2017.03.22"、“2017.03 ..
发布时间:2022-01-12 12:49:16 Python

python多处理锁问题

我想将字典列表与 python 多处理模块一起添加. 这是我的代码的简化版本: #!/usr/bin/python2.7# -*- 编码:utf-8 -*-导入多处理导入功能工具进口时间def 合并(锁,d1,d2):time.sleep(5) # 一些耗时的东西带锁:对于 d2.keys() 中的键:如果 d1.has_key(key):d1[键] += d2[键]别的:d1[键] = ..
发布时间:2022-01-12 12:46:35 Python

使用带有 multiprocessing.Pool 的锁时遇到问题:酸洗错误

我正在构建一个 python 模块来从大量文本中提取标签,虽然它的结果质量很高,但它的执行速度非常慢.我试图通过使用多处理来加速这个过程,这也很有效,直到我尝试引入一个锁,以便一次只有一个进程连接到我们的数据库.我一生都无法弄清楚如何完成这项工作-尽管进行了很多搜索和调整,但我仍然收到 PicklingError: Can't pickle : attrib ..
发布时间:2022-01-12 12:38:43 Python

了解多处理:Python 中的共享内存管理、锁和队列

Multiprocessing是python中一个强大的工具,我想更深入地了解它.我想知道什么时候使用 regular Locks 和 队列 以及何时使用多处理 一个条件的成功被定义为完美地召回了输入从队列中,查看底部的函数read_queue. 条件 条件 1 和 2 是不言自明的.条件 1 涉及创建锁和队列,并将它们传递给进程池: def 场景_1_pool_no_mana ..
发布时间:2022-01-12 12:22:09 Python

Python 在进程之间共享锁

我正在尝试使用部分函数,​​以便 pool.map() 可以针对具有多个参数的函数(在本例中为 Lock() 对象). 这里是示例代码(取自我上一个问题的答案): from functools import partialdef 目标(锁定,iterable_item):对于项目中的项目:# 做一些很酷的事情如果(...这里的一些条件...):lock.acquire()# 写入标准输出或 ..
发布时间:2022-01-12 12:07:21 Python

死锁的解决方案:锁排序

在以下代码中,如果两个线程同时调用 transaction() 函数,转置不同的帐户,则可能出现死锁. 无效交易(Account from, Account to, double amount){互斥锁1,锁2;lock1 = getlock(从);lock2 = getlock(to);获取(锁定1);获取(锁定2);取款(从,金额);存款(至,金额);释放(锁2);释放(锁1);} 也就是 ..
发布时间:2022-01-11 23:15:23 其他开发

PHP:如何避免读取通过 FTP 推送给我的部分文件?

文件正在通过 FTP 推送到我的服务器.我在 Drupal 模块中使用 PHP 代码处理它们.操作系统是Ubuntu,FTP服务器是vsftp. 我会定期检查新文件,使用 SimpleXML 处理它们并将它们移动到“完成"文件夹.如何避免处理部分上传的文件? vsftp 的 lock_upload_files 默认为 yes.我想先尝试移动文件,期望移动在当前上传的文件上失败.这似乎没 ..
发布时间:2022-01-09 11:40:51 PHP

如果锁定的对象内部发生异常,它会保持锁定状态吗?

在 c# 线程应用程序中,如果我要锁定一个对象,假设是一个队列,如果发生异常,该对象会保持锁定状态吗?伪代码如下: int ii;锁定(我的队列){MyClass LclClass = (MyClass)MyQueue.Dequeue();尝试{ii = int.parse(LclClass.SomeString);}抓住{MessageBox.Show("解析字符串出错");}} 据我了解, ..
发布时间:2022-01-08 12:04:13 C#/.NET

HTC Desire 中的数据库锁定问题

在我的应用程序中,一项服务是从服务器获取数据并将其插入到表 A. 如果我转到特定的 UI,我需要从另一个 table B 中列出数据如果背景操作正在做它会产生数据库锁定异常.我有两个数据库操作在两个不同的表上并行完成. 它在三星 gt15801 中运行良好.但是HTC希望它会生成数据库锁定错误. HTC 愿望 - 插入过程需要 91 秒. 三星 gt15801 - 插入过程 ..
发布时间:2022-01-06 21:07:14 移动开发

PDO、mysql、事务和表锁定

为了好玩,我将应用程序中的 mysqli 扩展替换为 PDO. 偶尔我需要使用事务 + 表锁定. 在这些情况下,根据mysql手册,语法需要有点不同.与其调用 START TRANSACTION,不如这样做... SET autocommit=0;锁定表 t1 写入,t2 读取,...;... 在这里对表 t1 和 t2 做一些事情...犯罪;解锁表; (http://dev.my ..
发布时间:2022-01-06 21:01:39 PHP