【问题标题】:Get unique ID for a running process获取正在运行的进程的唯一 ID
【发布时间】:2018-11-23 09:25:48
【问题描述】:

我目前正在寻找替换我之前实现的一个系统,该系统生成一个唯一 ID,该 ID 从进程打开到关闭时都有效,随机唯一 ID 是使用系统时间和其他变量的混合生成的每次启动应用程序时。

我要做的是为进程本身生成一个唯一标识符,进程 ID 不是我可以使用的东西,因为它有可能被重用

有谁知道根据进程本身为单个进程生成唯一 ID 的方法?

【问题讨论】:

  • 你能用一个向导吗?这很可能是独一无二的。
  • 是的,它会,但我需要的是我可以在具有相同 ID 的同一会话中不断生成的东西,只需基于流程。
  • 如何将进程 PID 与从 datetime.Now 中选取的滴答数结合起来呢?还是从纪元开始的总秒数,具体取决于您的进程创建率?
  • 这些 ID 是如何使用的?
  • @DanHall 为什么?这看起来像 XY problem

标签: c# uniqueidentifier


【解决方案1】:

Process.StartTime.Ticks 可以用作唯一标识符,因为它不可能在单个滴答中运行多个进程

【讨论】:

  • 技术上可以在多核 CPU 上实现
  • 如果我们在谈论可能性,那么将进程 ID 作为前缀添加到该 uniuq 标识符字符串:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-16
相关资源
最近更新 更多