问题标签 [process]

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 投票
3 回答
1162 浏览

c# - 如何释放进程的资源

我通过使用 System.Diagonistics.Process 并传递两个文件名作为参数来调用外部进程。现在有时这个进程由于异常而终止,并且似乎文件句柄没有被进程释放。如何释放进程占用的资源。

0 投票
1 回答
757 浏览

multithreading - 当 Apache 工作者启动自己的工作者线程或进程时会发生什么?

如果我将 Apache 与一组工作进程一起使用,并且其中一个启动了自己的长时间运行的进程,那么该工作进程会发生什么?Apache最终会杀死它,杀死子进程吗?那个工人会永远不可用,但继续运行吗?如果它启动一个线程而不是一个进程,它有什么不同?它在各种 Web 应用程序部署方案中有何不同?

0 投票
4 回答
21752 浏览

c - 在管道中获取命令输出,C for Linux

我需要运行一个 Linux CLI 命令并从 C 中获取它的标准输出。

我可以使用 pipe() 创建一个管道,然后 fork/exec,在调用 exec() 之前将子级的标准输出描述符重定向到管道中,并从父级的管道中读取。另外,我需要等孩子。

是否有一个简单的调用来做 fork + redirect + exec + wait,就像 system() 做 fork + exec + wait 一样,只有 system() 不做重定向。

有 popen(),它执行 fork + redirect + exec,但不执行等待,所以我无法获得退出状态。

0 投票
3 回答
4244 浏览

linux - 确定 Linux 上进程停滞的原因

我正在尝试确定 Linux 上进程停滞的原因。这是一个电信应用程序,在相当重的负载下运行。8 个 T1 跨度中的每一个都有一个单独的过程。每隔一段时间,其中一个进程就会变得非常无响应 - 在通常非常繁忙的进程日志中记录事件之前最多可能 50 秒。

可能是某些系统资源不足。显而易见的事情 - CPU 使用率 - 看起来没问题。

哪些 linux 实用程序可能最适合捕获和分析这类事情,并且尽可能不引人注目,因为这是一个高负载系统?看起来,它需要是过程而不是面向系统的。也许对 /proc/pid/XX 的持续监控?Top 在这里似乎不太有用。

0 投票
1 回答
488 浏览

c# - 如何从客户端机器检测当前的共享点页面?

在客户端机器上,我需要能够以某种方式检测当前用户正在查看哪些站点。我知道 sharepoint 应用程序的基本 URL,比如 sharepoint.thecompany.net,但是我如何从服务器获取最后请求的 url?在尝试迭代当前进程并将 iexplorer 进程转换为我可以使用的东西时,我遇到了死机,我只是不知道将进程转换为哪种对象:-(

我希望在 C# 程序集中实现这个逻辑,它应该在客户端上运行。

还有其他可行的方法吗?

提前致谢

0 投票
3 回答
938 浏览

.net - 限制程序集执行的 cpu 周期数

我有一个项目可以动态加载实现指定接口的未知程序集。除了实现我的接口之外,我不知道程序集的内容或目的。

我需要以某种方式限制这些组件可用的处理能力。处理器优先级不是我想要的。我不能使用秒表并为程序集分配一定的时间来运行,因为服务器可能会很忙。

理想情况下,我想指定一些完全独立于负载的 CPU 使用量度量。如有必要,我可以在自己的进程中运行程序集。

有没有办法以某种方式测量给定线程(或进程,尽管线程是最佳的)的总超时 CPU 使用率?

我可以使用进程性能计数器,还是我怀疑它们太不可靠了?虽然我不需要循环精度,但我需要相当高的精度来限制分配给每个程序集执行的计算能力。


根据我的情况推断一下。我不寻找进程优先级的原因是我不害怕耗尽我的资源,我只需要确保我可以测量给定程序集使用的“多少”资源 - 因此我关于服务器的观点是任意的忙碌的。

想象一下您有两个程序集 X 和 Y 的示例场景。它们中的每一个都实现了一个给定的算法,我想对哪个程序集可以最快地完成工作进行原始测试。我运行每个程序集并让它运行,直到它使用“Z”资源,此时我评估哪个程序集做得最好。在这种情况下,我不介意一个程序集以 100% CPU 运行 3 秒,而另一个程序集以 2% CPU 运行 5 分钟 - 总资源使用量很重要。

我想我也许可以使用 CPU time perfcounter 来做一个粗略的限制。在一个新线程中运行每个程序集并让它运行,直到它使用给定的 CPU 时间,此时我将终止该进程并评估结果。我只是怕它不够准确。

0 投票
9 回答
214 浏览

process - 在决定一个功能时,你会做什么?

您主要考虑实施它的原因,还是不实施它的原因?各有什么优势?

0 投票
12 回答
462 浏览

process - 小部分敏捷:物超所值

我们应该首先实施敏捷开发的哪个方面来改进我们的开发过程,为什么?

我的处境需要我“调整”我的流程,而不是重新设计它,而“敏捷”似乎是当今的口头禅。如果我们只能做出一项改变来改善某些东西——质量、上市时间、文档、透明度,那么什么会产生最明显、最积极的影响?

如果我们选择正确,我们将能够做出第二选择。:-)

更新: 您当前的 SDLC 是什么?
环境:本质上是“重启”。少数开发人员;具有 10^5-10^6 LOC 并在全球部署数万个的遗留产品;产品具有很强的相互依存性;多年来添加的重要功能,包括许多一次性的,没有重构;时间紧迫;表面质量保证;没有验尸或“过程大师”。

典型流程:

  1. 创建设计/规范。所有利益相关者的审查。
  2. 编码一个或多个功能/修复。
  3. 修改设计/规格以解决意外情况。
  4. 测试功能,记录缺陷。
  5. 优先处理新的和剩余的任务。
  6. 修改设计/规格/时间表。
  7. 必要时返回步骤 2。
  8. 发布测试版,记录反馈。
  9. 必要时返回步骤 2。
  10. 正式发布。

感谢您提供这么多有用的建议和见解!

0 投票
4 回答
1081 浏览

haskell - 在 Haskell 中,如何在父进程和分叉子进程之间共享数据?

我什至如何首先使用 Haskell 来分叉一个子进程?

此外,如果管道是数据共享问题的明显解决方案 - 除了使用管道之外还有其他方法吗?我熟悉 C 中共享内存段的使用(shmget、*shmat、shmdt 和 shmctl 函数)。Haskell 可以模仿吗?如果是这样,怎么做?

如果您能提供任何帮助,我将不胜感激。

我必须承认我对函数式编程语言非常陌生,尤其是在 Haskell 方面。所以如果我说了些傻话,请原谅我(并请纠正我)。

0 投票
1 回答
2306 浏览

multithreading - 在服务中设置线程优先级无效

在我可以在 Windows 服务中设置线程优先级之前是否需要一些额外的配置?

在我的服务中,我有几个线程,每个线程都调用该CreateProcess()函数来启动外部应用程序。我想根据其他一些因素将线程(或进程)优先级调整为normal或。lower

问题是SetThreadPriority()函数失败并出现错误 6(无效句柄?)。我正在传递一个从PROCESS_INFORMATION::hThread(当然是在调用之后CreateProcess())获得的句柄,所以我认为句柄应该是有效的。

我还尝试使用该SetPriorityClass()功能设置进程的优先级,但也失败了。

该服务以本地用户身份登录。