zoukankan      html  css  js  c++  java
  • 浅谈队列

    在以前的大业务中大部分的的时候是直接把请求的信息插入数据库。可是随着数据量和并发量的增加,简单的插表不能在解决 并发问题。这时候就要对原有的业务进行改造,写入是同步写入队列当中,然后异步对队列就行操作。

    队列?

     队列是什么呢?

    队列在按接收顺序存储消息方面非常有用,以便于进行顺序处理。此类将队列作为循环数组实现。存储在 Queue 中的对象在一端插入,从另一端移除。

    Queue 的容量是 Queue 可以保存的元素数。Queue 的默认初始容量为 32。向 Queue 添加元素时,将通过重新分配来根据需要自动增大容量。可通过调用 TrimToSize 来减少容量。

    上面的话引用子msdn的解释。其实队列就是一个简单 就类似一个竹筒 一边只能进,一边只能出




                // 新建一个队列 并且字符 入队
                Queue myQ = new Queue();
                //入队
                myQ.Enqueue("Hello");
                myQ.Enqueue("World");
                myQ.Enqueue("!");
                //出队 第一个元素出对
                myQ.Dequeue();




               
                Console.WriteLine("myQ");
                //队列中包含的元素个数
                Console.WriteLine("\tCount:    {0}", myQ.Count);
                Console.Write("\tValues:");
                PrintValues(myQ);
            }




            public static void PrintValues(IEnumerable myCollection)
            {
                Queue str = (Queue)myCollection;
                Console.Write(" Queue(Of T) 中包含{0}数。", str.Count);


                foreach (Object obj in myCollection)              
                    Console.Write("    {0}", obj);
                 
                   //队列中是否包含Traner
                bool b= str.Contains("Traner");
                ///清空队列
                str.Clear();
                Console.WriteLine();
                Console.ReadLine();
            }

    队列里不止可以存,简单类型,也可以存复杂类型  在很大时候也需要队列支持



  • 相关阅读:
    idea本地安装 lombok插件
    win7系统开机启动出现蓝屏,提示BAD_SYSTEM_CONFIG_INFO
    使用mini-textbox控件时 不能获取value值
    为表格动态添加一行,miniui组件无效
    miniui表格load数据成功后,回调函数,其中setData要用如下方法
    路径1
    路径
    dubbo spring bean id冲突
    @Transactional spring 配置事务 注意事项
    Spring事务管理只对出现运行期异常进行回滚
  • 原文地址:https://www.cnblogs.com/Traner/p/2819994.html
Copyright © 2011-2022 走看看