Я бы предположил, что ответ, скорее всего, будет Б, хотя при некоторых обстоятельствах он может быть и А.
А: Вы можете и должны использовать
msbuild
however sometimes this causes a race condition, for example, it could be that a developer omits the /p:Configuration=Release
в выходном пути, что означает, что оба Debug
and the Release
build выводит файл в то же место, тогда возникает просто борьба за то, какая сборка на самом деле получит и заблокирует этот файл первой.Б: Если разработчик ссылался на двоичные файлы в
Debug
folder и это была чистая касса тогда этих сборок не было бы, хотя, если бы они собирались параллельно на одной машине, они, по сути, могли бы существовать.С: Если разработчик устанавливает для своей конфигурации значение «Отладка» (или что-то еще в этом отношении), это повлияет на сборки. их машина при условии, что вы используете
$(Configuration)
option on the BuildInParalell
командную строку в среде CI/CD.Вполне возможно, что Azure DevOps или любой другой инструмент CI/CD можно настроить для восстановления каждой конфигурации в чистом контейнере, что означает, что выпуск и отладка фактически компилируются в их собственной изолированной файловой системе, поэтому не могут конфликтовать друг с другом.
Это не лучший вопрос для экзамена, потому что недостаточно информации, чтобы различить варианты А и Б. Однако на некоторых экзаменах это делается намеренно, и часто лучше всего выбрать наименее неправильно ответ, в этом случае я бы выбрал Б.