小编maz*_*maz的帖子

在TFS启用多个签出文件

我在一个小团队中使用TFS 2010.签出文件的策略不支持多次签出.但是我想要特定文件(仅限两个文件(cs文件))有多重检查选项吗?当使用"check out for edit"时,"Lock Type"的组合框表示只有一个可以编辑文件,没有选项可以更改它.

c# tfs

8
推荐指数
2
解决办法
1万
查看次数

StackExchange.Redis - 在哈希集或搜索键上实现过期 - 良好的性能

我有 StackExchange.Redis 使用的 redis 缓存。

首先,redis包含hashSets,我尝试为hashSet中的键设置过期时间,但我读了这篇文章(https://github.com/antirez/redis/issues/167#issuecomment-2559040)并意识到这是不可能的。

所以我改变了我的redis缓存,现在它只包含键,值对。过期的问题实际上已经解决了:-)。

但缓存的另一个功能是让所有键都以某个 前缀开头。

首先我尝试使用 Keys 函数,但这里不推荐使用,并且在某些情况下会出现超时异常。

阅读后,我选择使用包含函数 SearchKey(string pattren) 的 StackExchange.Redis.Extention.Core。(请参阅https://www.nuget.org/packages/StackExchange.Redis.Extensions.Core)

SearchKey 功能工作正常,唯一的问题是性能不佳。

对于 50,0000 个密钥,searchKey 函数需要:3~ 秒。

对于 100,0000 个密钥,searchKey 函数需要:6~ 秒。

对于 200,0000 个密钥,searchKey 函数需要:12~ 秒。

在生产中,我的 Redis 缓存将包含200,000 - 300,000 个密钥,因此性能很差。

有什么想法,解决它吗?

感谢!

.net c# caching redis stackexchange.redis

5
推荐指数
0
解决办法
4799
查看次数

将坩埚与tfs集成

我使用TFS与Jira管理我的团队任务.我想在开发过程中集成Code Review工具.

当我尝试使用坩埚时,我发现它不支持TFS.

我想知道是否有一个好的和可信的解决方案,让我能用坩埚和TFS.

另外,如果VS和JIRA的代码重新审视工具还有其他建议.

谢谢!

tfs jira jira-plugin tfs2012

3
推荐指数
1
解决办法
3439
查看次数

异步 - 等待 - 线程预期

我有以下代码:

  static void Main(string[] args)
    {
        Run1();
        Run2().Wait();
    }

    static async Task DoAsyncWork()
    {
        await Task.Delay(2000);
    }

    static async Task Run2()
    {
        var tid = Thread.CurrentThread.ManagedThreadId;
        await DoAsyncWork();
        Console.WriteLine(tid == Thread.CurrentThread.ManagedThreadId);
    }

    static void Run1()
    {
        var tid = Thread.CurrentThread.ManagedThreadId;
        DoAsyncWork().Wait();
        Console.WriteLine(tid == Thread.CurrentThread.ManagedThreadId);
    }
Run Code Online (Sandbox Code Playgroud)

什么是输出:

  1. 有时真有时是假的.

    真正

  2. 假

    假

  3. 真正

    有时真有时是假的.

  4. 真正

    真正

我认为3是正确答案,但是当我运行代码时,我得到:

真正

假

我知道为什么第一个打印是真的,但任何人都可以解释为什么当我运行代码时,我得到假?(我如何在第二次印刷中获得真实?)

谢谢!

c# asynchronous task-parallel-library async-await

3
推荐指数
1
解决办法
124
查看次数

将rand5映射到范围内的数字

我有一个名为Rand5的函数,它提供1到5之间的随机数.
我连续三次打电话给Rand5,所以我在1-5之间有三个数字.例如:(1,1,1),(1,2,5),等.

有125种可能的选项,我想将125个选项映射到1到125之间的数字.

所以:
(1,1,1)映射到1.
(1,1,5)映射到5.
(1,2,2)映射到7.
(5,5,5)映射到125.

你能用伪代码帮我吗?

谢谢!

random algorithm

1
推荐指数
1
解决办法
55
查看次数