Пройдя через различные блоги, я совершенно смущен терминологией "многозадачности" или бок о бок.
-
Некоторые блоги говорят, что совместное выполнение означает две версии CLR в процессе. Некоторые другие утверждают, что это похоже на сборку .net 2.0 и .net 3.0, выполняющуюся бок о бок. Я очень разочарован тем, что я не уверен, кто прав, кто не прав.
-
Я также видел во многих блогах, таких как блог Scott Hanselman и т.д. (что сбивает с толку), что любая функция .NET 4.5 не будет работать, если целевая среда 4.0. Я могу согласиться на это. Но я не могу согласиться или понять тот факт, что функция 4.0, чья ошибка исправлена в 4.5, скроется, если я ее построю с использованием 4.5 и развернусь в 4.0. Здесь я не понимаю термин "скрытый", и никто не осмеливается объяснить, что на самом деле это значит. Это означает ошибку времени выполнения? Это означает ошибку времени компиляции? Это не может быть. Это означает непоследовательное поведение? Исключение? Если это так, мне интересно, почему MS разрешает этот тип гибкости в разработке в VS. Он служит ЛЮБОЙ цели? Я понимаю, что первый случай имеет смысл, но не понимает или не согласен со вторым случаем.
-
Я также видел в сообщении Рика/Скотта Ханзельмана, что основные изменения означают полное обновление, включая CLR. Затем я должен увидеть 3.0 в качестве основного обновления, но это не так, поскольку он все еще использует .NET 2.0 CLR. Тогда почему терминология именования 3.0.x.x/3.5.x.x? Как и в случае .NET 4.0.30319.x, где CLR также является новым, поэтому я согласен с этим. Я удивлен, кто прав. Либо эти люди, либо MSDN, как и противоречат их принципам (как MSDN говорит, что форматирование как Major.Minor.Build.Revision, и Hanselman или другие говорят, что Major означает обновление CLR и, хотя это не в .NET 3.0)
/li >
Ссылка: http://www.hanselman.com/blog/NETVersioningAndMultiTargetingNET45IsAnInplaceUpgradeToNET40.aspx
http://msdn.microsoft.com/en-us/library/bb822049(v=vs.110).aspx
Любые мысли по двум вышеуказанным вопросам?