最近遇到了一个需求是用户要群发短信,由于一次发送好几万条数据,后台开了一个线程,现在问题是为了避免有多人同时点了发送全部按钮,需要设计成排队等待顺序执行,请问大神们,有什么好的解决办法?java 多线程java

解决方案 »

  1.   

    方法名前面添加关键字:synchronized 
      

  2.   

    jdk1.5新增的同步工具类java.util.concurrent.CountDownLatch
    再加上1.5新增的线程池工具类java.util.concurrent.ThreadPoolExecutor
    两个搭配使用就能达到你要的
      

  3.   

    在WEB 里做一个拦截器,只要是你发短信的请求。就进行计数,如果不是集群架构,就直接写内存里,记得用原子变量, 设置一个变量,超过多少,就禁止操作。    如果是集群的话,这个计数就写数据库里。
      

  4.   

    http://blog.csdn.net/kanepan/article/details/8029298