ubuntu@ip-172-31-17-240:~/agent/_work/1/s/work/mono/netcore$ MONO_ENV_OPTIONS="--debug --llvm" COMPlus_DebugWriteToStdErr=1 ./dotnet --fx-version "5.0.0-alpha1.19527.2" sample/HelloWorld/bin/netcoreapp3.0/HelloWorld.dll Hello World from Mono! System.Private.CoreLib, Version=126.96.36.199, Culture=neutral, PublicKeyToken=7cec85d7bea7798e HelloWorld, Version=188.8.131.52, Culture=neutral, PublicKeyToken=31bf3856ad364e35 .NET Core 5.0.0-alpha1.19527.2
netcoreapp3.0using Mono Debug in VS Code and I have a slight feeling that Mono isn't finding assemblies that are stored in
~/.nuget/packages/. Running the application using
dotnetworks completely fine. I suppose I'm just using Mono 6.0.0 so it could've been resolved in a newer version? Or may I need to manually configure Mono in some way?
The official story I believe is you have to branch, prior to running code that might have been written, since you last ran it on that thread/cpu.
You cannot overwrite code that another thread/cpu is in the midst of running, but you can overwrite code that another thread/cpu might shortly branch into.
On Windows the thing you do is call FlushInstructionCache, which then on x86 does nothing, but mere the act of calling it, has the required affect. Plus, of course, the writer is likely to have other branches, so FlushInstructionCache becomes redundant.