Exemplo n.º 1
0
        private static async Task AsyncMethodB(AsyncLocalValueProvider provider, string expectedValue)
        {
            provider.SetValue("X", expectedValue);
            UT.Assert.AreEqual(expectedValue, provider.GetValue <string>("X"));
            await Task.Delay(100);

            UT.Assert.AreEqual(expectedValue, provider.GetValue <string>("X"));
        }
Exemplo n.º 2
0
        public void TwoThreads2()
        {
            const string stringA  = "String A";
            const string stringB  = "String B";
            var          provider = new AsyncLocalValueProvider();

            new Thread(async() => await AsyncMethodB(provider, stringA)).Start();
            new Thread(async() => await AsyncMethodB(provider, stringB)).Start();
        }
Exemplo n.º 3
0
 private static async Task AsyncMethodA()
 {
     const string stringA  = "String A";
     const string stringB  = "String B";
     var          provider = new AsyncLocalValueProvider();
     var          t1       = AsyncMethodB(provider, stringA);
     var          t2       = AsyncMethodB(provider, stringB);
     await        t1;
     await        t2;
 }
Exemplo n.º 4
0
        public void TwoProviders()
        {
            const string stringA   = "String A";
            const string stringB   = "String B";
            var          provider1 = new AsyncLocalValueProvider();

            provider1.SetValue("X", stringA);
            var provider2 = new AsyncLocalValueProvider();

            UT.Assert.AreEqual(stringA, provider2.GetValue <string>("X"));
            provider2.SetValue("X", stringB);
            UT.Assert.AreEqual(stringB, provider1.GetValue <string>("X"));
        }
Exemplo n.º 5
0
        public void GetNotInitialized()
        {
            var provider = new AsyncLocalValueProvider();

            UT.Assert.IsNull(provider.GetValue <string>("X"));
        }