예제 #1
0
 private static void printCache(CacheLRU <string, int> cache)
 {
     Console.Out.WriteLine();
     Console.Out.WriteLine(string.Format("Cache State at {0}: ", DateTimeOffset.Now));
     Console.Out.WriteLine(cache.ToString());
     //foreach (var entry in cache)
     //{
     //    Console.Out.WriteLine(entry);
     //}
 }
예제 #2
0
        private static void writeTocache(CacheLRU <string, int> cache)
        {
            var random = new Random((int)DateTime.Now.Ticks);

            for (int i = 0; i < 5; ++i)
            {
                cache.Write("A" + writeKey, writeKey * 10);
                ++writeKey;
            }

            Console.Out.WriteLine("Write() Completed.");
        }
예제 #3
0
        static void Main(string[] args)
        {
            var timeout = 1000;
            var cache   = new CacheLRU <string, int>(timeout);

            writeTocache(cache);
            printCache(cache);

            Thread.Sleep(timeout);
            cache.Read("A" + 1);

            cache.WorkerTask();
            printCache(cache);

            writeTocache(cache);
            printCache(cache);

            Thread.Sleep(timeout);
            cache.WorkerTask();
            printCache(cache);

            Console.Out.WriteLine("Hit Any key");
            Console.ReadKey();
        }