jjzjj

pthread_mutex_lock

全部标签

c++ - 使用 pthread_win32 增加进程优先级

环境:WinXP、VisualC++我正在使用pthread_win32库来在我的程序中实现线程,我想将我的进程(程序)优先级提高到HIGH_PRIORITY_CLASS。库中是否有允许这种操作的函数?否则,是否可以将SetPriorityClass函数与`pthread_win32一起使用,或者我必须使用win线程以确保某种兼容性? 最佳答案 你可以获得一个本地线程句柄来调用SetPriorityClass与pthread_getw32threadhandle_np. 关于c++-使用

ruby-on-rails - 在 Gemfile.lock 中使用仅限 Windows 的 gem 是否存在问题?

在Windows上运行bundleinstall时,Gemfile.lock会获得一些仅适用于Windows的gem,例如:bcrypt-ruby(3.0.1)bcrypt-ruby(3.0.1-x86-mingw32)将它们放在Gemfile.lock上并将它们部署到生产环境(Linux)是否有任何问题? 最佳答案 如果bundler比1.1.2版本更新,它将自动删除bcrypt-ruby(3.0.1-x86-mingw32)。这里是围绕这个问题的讨论:https://github.com/carlhuda/bundler/iss

.net - 以编程方式监视文件上的窗口#locks,如 compmgmt.msc 所示

我们目前有太多用户试图通过使用文件锁的遗留程序访问单个文件的问题。我正在尝试编写一个将在服务器上运行并监视此特定文件(平面文件数据库)的dotnet程序是否可行。每当客户端尝试访问此文件并且它被另一个用户锁定时-我想向他们发送一条消息,告诉他们谁正在访问该文件,这样他们就可以惹恼那个人而不是我。当我打开compmgmt.msc时,我可以看到文件、文件锁和锁定它的用户,因此我知道可以访问此信息。但是我似乎找不到可以获取此信息的dotnet类(#locks,已锁定它的用户)。有人知道可以在这里帮助我的类(class)吗? 最佳答案 底层

windows - pthreads 与 MinGW 的静态链接

我想将“Win32的pthreads”与我的应用程序静态链接,使用MinGW32编译,这样应用程序就不需要pthreadGC2.dll来运行。我正在使用最新版本的pthreads-2.9.1,从here下载并将lib和包含文件复制到MinGWlib和包含目录。在网上搜索如何操作时,我偶然发现了thisthread它指示使用-static-libgcc-static-libstdc++标志。这不起作用,这意味着应用程序可以编译,但如果没有pthreadGC2.dll就无法运行。他们还推荐使用-static-static-libgcc-static-libstdc++。这不会编译并出现以下

windows - 通过密码管理器在 chrome 密码设置中禁用 Google Smart Lock

我安装了禁用谷歌智能锁的truekey和dashlane密码管理器。如果我们去检查chrome://settings/passwords,它会显示谷歌智能锁功能处于禁用状态,并表示Truekey(或Dashlane)正在控制此设置。我想知道他们如何在最终用户不知情的情况下禁用此设置。 最佳答案 Truekey会显示“更改您的隐私相关设置”的权限警告。它使用chrome.privacyapi:https://developer.chrome.com/extensions/privacy将“隐私”权限添加到list。然后,您可以像这样禁

c++ - 在 c++ 的 Windows 线程编程中,pthread_setcanceltype 的替代方案是什么?

在c++的windows线程编程中,pthread_setcanceltype的替代方案是什么? 最佳答案 Windows线程没有取消点,因此无需考虑系统取消类型。因此,在Windows上“取消”一个线程意味着您,开发人员,需要想出一个策略来告诉线程退出。如果它是GUI线程,您可以向其发送WM_QUIT消息。如果它是一个非GUI线程,那么它真的取决于线程在做什么。您需要分析线程并查看是否存在代码可以明确检查线程是否需要继续运行或退出的点。有一个pthreads-win32如果您宁愿避免该问题并在Win32上获得pthreads投诉行

windows - 使用 Windows 线程时,是否可以指定一个缓冲区用于线程的堆栈,类似于 pthread_attr_setstack()?

pthreads允许用户提供一block内存用于线程堆栈:size_tstack_size=1024*1024*4;void*stack=malloc(stack_size);pthread_attr_tattributes;pthread_attr_init(&attributes);pthread_attr_setstack(&attributes,stack,stack_size);pthread_tthread_id;pthread_create(&thread_id,&attributes,worker_function,NULLWindows线程是否提供类似的功能?Crea

windows - 如果 git index.lock 存在,我可以安全地删除它,还是需要更多操作来验证完整性?

在过去的几周里,我收到了几次关于index.lock存在的消息。删除该文件作为解决方案在gitindex.lockFileexistswhenItrytocommit,butcannotdeletethefile删除该文件是否足够,或者我还需要执行其他操作(是否有验证完整性等的方法?)。这是在安装了git命令行工具、TortoiseGIT和SourceTree的Windowsx64系统(完全修补)上。 最佳答案 没有otheranswers提及index.lock的用途。然而,它记录在Git发行版中,位于文件“Documentati

c++ - 你如何为 x64 编译静态 pthread-win32 库?

看起来已经做了一些工作来制作pthread-win32使用x64,但没有构建说明。我曾尝试使用VisualStudiox64交叉工具命令提示进行简单构建,但是当我尝试从x64应用程序链接到lib时,它看不到任何函数导出。它似乎仍在将lib编译为x86或其他东西。我什至尝试过将/MACHINE添加到makefile的适当位置,但没有帮助。有人让这个工作吗? 最佳答案 您可以使用vcpkghere.这是C++的Windows包管理器。它支持pthread构建以及其他开源库。我想使用静态pthread库。当我下载pthread时,我得到了

c++ - 为什么 Win32 mutex 这么耗时

我一直在通过C/C++阅读Windows的书。在第8章第215页,作者比较了各种同步机制的性能。而且我发现互斥锁的性能很差。当4个线程同时运行时,它花费了超过23秒用于互斥锁同步。为什么Win32mutex这么耗时?我们什么时候可以使用互斥体?PS:我把测试代码贴在了GitHub:https://gist.github.com/985198感谢您的回复。 最佳答案 Win32中的互斥量是一个内核对象,这意味着每次使用它(Wait、Release)都需要一个系统调用来切换到内核模式并返回到用户模式模式。另外,如果您的线程实际上必须等待