concurrency

    29热度

    17回答

    随着多核CPU在桌面上的兴起,多线程技能将成为程序员的宝贵资产。你可以为想要了解线程编程的程序员推荐一些好的资源(书籍,教程,网站等)吗?

    2热度

    3回答

    我正在实现文件服务器。目前,如果两个用户打开同一个文档,然后对其进行修改并保存更改,则文档的状态将为未定义(第一个用户的更改将永久保存或第二个用户的更改已保存)。这完全不令人满意。我考虑了两种可能的方法来解决这个问题: 第一种是在第一次打开文档时锁定文档,并在关闭文档时将其解锁。但是,如果与服务器的网络连接突然中断,文档将处于永久锁定状态。显而易见的解决方案是定期ping服务器。如果服务器未从特定

    24热度

    7回答

    Project Darkstar是每月JavaSIG昨晚在纽约市Google办公室举行会议的主题。对于那些不认识的人(可能是所有人),Project Darkstar是一个大型多人在线游戏框架,它试图处理所有“困难的东西”。基本的想法是你编写你的游戏服务器逻辑的方式是所有的操作都被分解成小任务。您将这些任务传递给Project Darkstar框架,该框架将它们分发到群集中的特定节点,发生任何并发

    19热度

    13回答

    其他编程语言提供了哪些库来提供Erlang风格的并发模型(进程,邮箱,模式匹配接收等)? 注:我特别感兴趣的是与Erlang类似的东西,而不仅仅是任何线程库或排队库。

    4热度

    1回答

    在并发程序中将对象从BlockingQueue中取出而不碰到竞争条件的最佳方法是什么?我目前在做以下,我不相信这是最好的方法: BlockingQueue<Violation> vQueue; /* in the constructor I pass in a BlockingQueue object full of violations that need to be processed

    2热度

    2回答

    这是场景: 我正在写一个应用程序,它将监视特定目录中的任何更改。这个目录将充斥着数千个文件,每个文件每个都有一个“几乎”唯一的GUID。文件格式是这样的: GUID.dat其中GUID == xxxxxxxxxxxxxxxxxxxxxxxxxxxxx (内部的内容是不相关的,但它只是文本数据) 我的应用程序将是具有一个单一的文本框中形式它显示所有正在实时添加和删除的文件。每次有新文件进来时,我都必

    253热度

    14回答

    信号量是一种常用于解决多线程问题的编程概念。我向社区提出的问题: 什么是信号灯,以及如何使用它?

    3热度

    3回答

    我正在寻找一种在C#中获取并发集合或至少支持并发枚举器的集合的方法。现在,当我迭代的集合发生变化时,我得到一个InvalidOperationException异常。我可能只是深拷贝的收集和使用私人拷贝工作,但我不知道是否有可能是一个更好的办法 代码片段: foreach (String s in (List<String>)callingForm.Invoke(callingForm.deleg

    37热度

    8回答

    是否有可能在运行时以编程方式检查持有给定对象的锁的线程的名称?