v10.10.2024.0701 使用IJsonHost改进Json序列化
大石头 编写于 2024-07-01 08:36:34 大石头 提交于 2024-07-01 08:48:33
X
using System;
using System.Collections;
using System.Collections.Generic;

namespace NewLife.Collections
{
    /// <summary>栈接口</summary>
    /// <remarks>重点解决多线程环境下资源争夺以及使用lock造成性能损失的问题</remarks>
    /// <typeparam name="T"></typeparam>
    public interface IStack<T> : IEnumerable<T>, ICollection, IEnumerable, IDisposable
    {
        /// <summary>向栈压入一个对象</summary>
        /// <param name="item"></param>
        void Push(T item);

        /// <summary>从栈中弹出一个对象</summary>
        /// <returns></returns>
        T Pop();

        /// <summary>尝试从栈中弹出一个对象</summary>
        /// <param name="item"></param>
        /// <returns></returns>
        Boolean TryPop(out T item);

        ///// <summary>获取栈顶对象,不弹栈</summary>
        ///// <returns></returns>
        //T Peek();

        ///// <summary>尝试获取栈顶对象,不弹栈</summary>
        ///// <param name="item"></param>
        ///// <returns></returns>
        //Boolean TryPeek(out T item);
    }
}