`
pumbaa.he
  • 浏览: 71392 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

多线程并发开发心得

    博客分类:
  • java
 
阅读更多

可以通过【加锁】和【队列】来处理多线程下并发开发的问题

 

首先说加锁,我觉得加锁的操作是针对全局的,例如在创建用户名称时,需要验证用户名称是否唯一,这时候就可以通过加锁来防止并发调用时出现用户名一致的问题

这时候要把Lock锁设置成static静态全局变量,才能保证多线程下用的是同一个锁

 

队列是针对局部的,例如玩家打怪,这时候可以给每只怪创建一个队列,只要让同时攻击这只怪物的玩家通过队列一条一条的执行就可以了,如果是打不同的怪物,这个是可以一起进行的。

 

在java下还可以通过Executor并发框架来处理并发问题。其实原理和队列差不多,可以给对象创建一个单线程的执行者。详情可以参考http://www.iteye.com/topic/366591

分享到:
评论

相关推荐

    Linux多线程服务端编程:使用muduo C++网络库

    《Linux多线程服务端编程:使用muduo C++网络库》主要讲述采用现代C++在x86-64 Linux上编写多线程TCP网络服务程序的主流常规技术,重点讲解一种适应性较强的多线程服务器的编程模型,即one loop per thread。...

    Java 学习笔记极其详细版(包括一些个人色彩不仅仅是纯笔记)

    多线程编程:线程的创建、同步机制、并发工具。 网络编程:Socket编程、URL和URLConnection。 数据库连接:JDBC的使用和数据库交互。 Java Web技术:Servlet、JSP、MVC架构。 框架应用:Spring、Hibernate、Struts等...

    java版p2p网贷系统源码8.0-RESUME:恢复

    擅长性能调优,处理多线程高并发场景 关注系统安全,熟悉安全相关知识 熟悉消息队列,SQL/NOSQL技术,熟悉数据库锁/事务/索引/优化 熟悉分布式集群系统的设计,清楚CAP,BASE理论, DevOps理念 擅长建模,擅长应用...

    asp.net知识库

    第2章 并发操作的一致性问题 (2) Using sqlite with .NET Visual Studio 2005 中的新 DataSet 特性 MySQL 和 .Net2.0配合使用 与DotNet数据对象结合的自定义数据对象设计 (二) 数据集合与DataTable 与DotNet数据对象...

    CLR.via.C#.(中文第3版)(自制详细书签)Part1

    享有全球盛誉的编程专家Jeffrey Richter,这位与Microsoft .NET开发团队合作长达8年时间的资深顾问,在本书中和读者分享他编程生涯中积累的所有丰富经验和心得,他的独到、睿智的见解,他的远见卓识,为开发人员构建...

    CLR.via.C#.(中文第3版)(自制详细书签)

    享有全球盛誉的编程专家Jeffrey Richter,这位与Microsoft .NET开发团队合作长达8年时间的资深顾问,在本书中和读者分享他编程生涯中积累的所有丰富经验和心得,他的独到、睿智的见解,他的远见卓识,为开发人员构建...

    CLR.via.C#.(中文第3版)(自制详细书签)Part3

    享有全球盛誉的编程专家Jeffrey Richter,这位与Microsoft .NET开发团队合作长达8年时间的资深顾问,在本书中和读者分享他编程生涯中积累的所有丰富经验和心得,他的独到、睿智的见解,他的远见卓识,为开发人员构建...

    CLR.via.C#.(中文第3版)(自制详细书签)Part2

    享有全球盛誉的编程专家Jeffrey Richter,这位与Microsoft .NET开发团队合作长达8年时间的资深顾问,在本书中和读者分享他编程生涯中积累的所有丰富经验和心得,他的独到、睿智的见解,他的远见卓识,为开发人员构建...

    【RT-Thread作品秀】多功能气压计设计-电路方案

    为了提高软件运行的并发性和数据采集的实时性,故使用内核中的核心部分——线程,使其维护和管理每个任务的运行,同时以使用信号量和事件集等的同步方式,以及使用邮箱和消息队列等的通信方式来确保每个任务在运行...

    二十三种设计模式【PDF版】

    为能和大家能共同探讨"设计模式",我将自己在学习中的心得写下来,只是想帮助更多人更容易理解 GoF 的《设计模式》。由 于原著都是以C++为例, 以Java为例的设计模式基本又都以图形应用为例,而我们更关心Java在中间件等...

Global site tag (gtag.js) - Google Analytics