C# 如何在netcoreapp1.1中使用TextWriter.Synchronized

C# 如何在netcoreapp1.1中使用TextWriter.Synchronized,c#,.net-core,C#,.net Core,我想在我的应用程序中使用方法。我的目标框架是:netcoreapp1.1 这是我试图编译的程序: using System; using System.IO; namespace program { class Program { static void Main(string[] args) { using (var log = File.CreateText("out.log")) {

我想在我的应用程序中使用方法。我的目标框架是:
netcoreapp1.1

这是我试图编译的程序:

using System;
using System.IO;

namespace program
{
    class Program
    {
        static void Main(string[] args)
        {
            using (var log = File.CreateText("out.log"))
            {
                var syncedLog = TextWriter.Synchronized(log);
            }
         }
    }
}
这是我的csproj文件:

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp1.1</TargetFramework>
  </PropertyGroup>
</Project>

如何修复此问题?

由于.Net Core 1.1上不存在
TextWriter.Synchronized
,因此您必须自己实现它。首先,您可以使用。您将无法直接使用该代码,因为它广泛使用
[MethodImpl(methodimpoptions.Synchronized)]
,这在.Net Core 1.1上也不受支持。但是您可以在每个这样的方法中用
lock(this)
替换它

> dotnet run
  Program.cs(12,47): error CS0117: 'TextWriter' does not contain a definition for 'Synchronized'