コード例 #1
0
        public TownDatabase(LiteDatabase database)
        {
            Console.WriteLine("Running LiteDB!");
            this.database = database;

            Guilds = new LiteDBTableAccess <TownGuild>(database, "Guilds");
            Users  = new LiteDBTableAccess <TownUser>(database, "Users");
        }
コード例 #2
0
        public TownDatabase(IAmazonDynamoDB dbContext)
        {
            Console.WriteLine("Running DDB!");

            dynamo = new DynamoDBContext(dbContext);

            Guilds = new DynamoTableAccess <TownGuild>(dynamo);
            Users  = new DynamoTableAccess <TownUser>(dynamo);
        }
コード例 #3
0
        void Migrate <T>(ITableAccess <T> from, ITableAccess <T> to, Action <T> modify = null)
        {
            T last;

            foreach (T item in from.FindAll())
            {
                last = item;
                modify?.Invoke(item);

                to.Insert(item);
            }
        }
コード例 #4
0
        public TownDatabase(IAmazonDynamoDB dbContext, LiteDatabase database)
        {
            this.database = database;

            Guilds = new LiteDBTableAccess <TownGuild>(database, "Guilds");
            Users  = new LiteDBTableAccess <TownUser>(database, "Users");

            Console.WriteLine("Migrating to dynamo!");
            Migrate(dbContext);

            Guilds = new DynamoTableAccess <TownGuild>(dynamo);
            Users  = new DynamoTableAccess <TownUser>(dynamo);
        }
コード例 #5
0
ファイル: PerfMain.cs プロジェクト: zhangjianing9998/mmorpg
    private void StartCSCallLua()
    {
        int LOOP_TIMES = 1000000;

        Debug.Log("C# call lua :");
        sw.WriteLine("C# call lua :");

        FuncBasePara funcBaseParm = luaenv.Global.Get <FuncBasePara>("FuncBasePara");

        PerformentTest("C# call lua : base parameter function :", LOOP_TIMES, loop_times =>
        {
            for (int i = 0; i < loop_times; i++)
            {
                funcBaseParm(i);
            }
        });

        FuncClassPara funcClassPara = luaenv.Global.Get <FuncClassPara> ("FuncClassPara");
        ParaClass     paraClass     = new ParaClass();

        PerformentTest("C# call lua : class parameter function :", LOOP_TIMES, loop_times =>
        {
            for (int i = 0; i < loop_times; i++)
            {
                funcClassPara(paraClass);
            }
        });

        FuncStructPara funcStructPara = luaenv.Global.Get <FuncStructPara> ("FuncStructPara");
        ParaStruct     paraStruct     = new ParaStruct();

        PerformentTest("C# call lua : struct parameter function :", LOOP_TIMES, loop_times =>
        {
            for (int i = 0; i < loop_times; i++)
            {
                funcStructPara(paraStruct);
            }
        });

        FuncTwoBasePara funcTwoBasePara = luaenv.Global.Get <FuncTwoBasePara> ("FuncTwoBasePara");

        PerformentTest("C# call lua : two base parameter function :", LOOP_TIMES, loop_times =>
        {
            for (int i = 0; i < loop_times; i++)
            {
                funcTwoBasePara(i, i);
            }
        });

        sw.WriteLine("C# access lua table : ");

        ITableAccess iTAccess = luaenv.Global.Get <ITableAccess> ("luaTable");

        PerformentTest("C# access lua table : access member, get : ", LOOP_TIMES, loop_times =>
        {
            for (int i = 0; i < loop_times; i++)
            {
                int x = iTAccess.id;
            }
        });

        PerformentTest("C# access lua table : access member, set : ", LOOP_TIMES, loop_times =>
        {
            for (int i = 0; i < loop_times; i++)
            {
                iTAccess.id = 0;
            }
        });

        PerformentTest("C# access lua table : access member function : ", LOOP_TIMES, loop_times =>
        {
            for (int i = 0; i < loop_times; i++)
            {
                iTAccess.func();
            }
        });
    }
コード例 #6
0
 public StorageAccess(ICache cache, ILogger logger, ITableAccess tableAccess)
 {
     _cache       = cache;
     _logger      = logger;
     _tableAccess = tableAccess;
 }