Exemplo n.º 1
0
        public async Task ExecutionContextFlowsFromFirstCaller_NoJTF()
        {
            var asyncLocal = new Threading.AsyncLocal <string>();
            var asyncLazy  = new AsyncLazy <int>(delegate
            {
                Assert.Equal("expected", asyncLocal.Value);
                return(Task.FromResult(1));
            });

            asyncLocal.Value = "expected";
            await asyncLazy.GetValueAsync();
        }
Exemplo n.º 2
0
        public async Task ExecutionContextFlowsFromFirstCaller_JTF()
        {
            var context    = this.InitializeJTCAndSC();
            var jtf        = context.Factory;
            var asyncLocal = new Threading.AsyncLocal <string>();
            var asyncLazy  = new AsyncLazy <int>(
                delegate
            {
                Assert.Equal("expected", asyncLocal.Value);
                return(Task.FromResult(1));
            },
                jtf);

            asyncLocal.Value = "expected";
            await asyncLazy.GetValueAsync();
        }