Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# .NET系统范围的EventWaitHandle名称允许的字符_C#_.net_Event Wait Handle - Fatal编程技术网

C# .NET系统范围的EventWaitHandle名称允许的字符

C# .NET系统范围的EventWaitHandle名称允许的字符,c#,.net,event-wait-handle,C#,.net,Event Wait Handle,我只是一时好奇,对系统范围的EventWaitHandle的命名有什么限制吗?我想使用一个URL作为一个URL的名称,但它可能有很多奇怪的字符,我不希望它以静默方式失败或其他类似的方式失败,所以只要在这里检查这些名称是否有任何已知的非法字符 我试着自己找到这个,但我的谷歌fu没有达到标准。在这里。请参阅函数文档 名称可以具有“全局”或“本地”前缀,以在全局或会话命名空间中显式创建对象。名称的其余部分可以包含除反斜杠字符(\)之外的任何字符 另见 “Session\”前缀保留给系统使用,您不应该在

我只是一时好奇,对系统范围的
EventWaitHandle
的命名有什么限制吗?我想使用一个URL作为一个URL的名称,但它可能有很多奇怪的字符,我不希望它以静默方式失败或其他类似的方式失败,所以只要在这里检查这些名称是否有任何已知的非法字符

我试着自己找到这个,但我的谷歌fu没有达到标准。

在这里。请参阅函数文档

名称可以具有“全局”或“本地”前缀,以在全局或会话命名空间中显式创建对象。名称的其余部分可以包含除反斜杠字符(\)之外的任何字符

另见

“Session\”前缀保留给系统使用,您不应该在内核对象的名称中使用它


这种想法是错误的。到目前为止,您选择的名称最重要的特征是它的独特性。人们不善于选择独特的名字,这个世界上有太多叫汉斯的人


由计算机选择全局唯一ID。您已经知道它是Guid。在Visual Studio中,单击工具+创建GUID。Bullet#4是您想要的,复制/粘贴到代码中,并在其周围加上引号。以
Global\\
作为前缀,使其成为全系统的代表。

对于如此高的代表,你真的忽略了我的问题:p我想要的唯一性取决于我;若我要使用guid,我会让它不命名,所以它是进程本地的,不是类或方法本地的。我想要一个系统范围的eventwaithandle,这样我就可以让整个机器知道“嘿,如果你现在正试图请求URL,请排队等候或从memcached中获取它,因为我现在正在请求它”。我可以创建自己的解决方案,我需要的只是知道我的名字是否会违反任何内核限制。最后我扫描了URL并使用了Request{theURLsHashCode}。我和OP一样,试图通过配置来同步彼此相关的东西。在我的例子中,我有一些字符串可能包含任何字符,但对于需要一起等待的进程集是唯一的。当前没有生成GUID并将其复制到组中需要相互关联的所有进程的机制。我需要知道要从现有的唯一分组标识符字符串中过滤或转换哪些字符,因为这比使用guid;-)要简单得多。现在,消息摘要听起来很简单……而且,如果guid在
EventWaitHandle
名称中使用了非法/有意义的字符会怎么样?我总是觉得很神秘,为什么用户会对答案投否决票,然后期望他们的“我不会点击提问按钮”评论得到回应。至少,当他们的用户名与一个众所周知的麻烦的人匹配时,这是有意义的,这个人在4年前就停止了帮助。“宾基”一点也不响。在小黑书中注明。+1谢谢,这正是我要找的信息。