Вопросы с тегом «multithreading»

Вопросы, связанные с многопоточностью, включая технику, структуру и вопросы безопасности.

19
Как бы вы объяснили многопоточность семилетнему ребенку?
Locked . Этот вопрос и его ответы заблокированы, потому что вопрос не по теме, но имеет историческое значение. В настоящее время он не принимает новые ответы или взаимодействия. Если вам нужно объяснить многопоточность семилетнему ребенку, как бы вы это сделали? Я недавно получил этот вопрос в интервью. Я придумал историю …

4
Почему сопрограммы вернулись? [закрыто]
Закрыто . Этот вопрос основан на мнении . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 2 года назад . Большая часть основы для сопрограмм произошла в 60-х / 70-х годах, а затем остановилась …

2
Почему общее состояние ухудшает производительность?
Я работал по принципу параллельного программирования без разделения ресурсов. По сути, все мои рабочие потоки имеют неизменные доступные только для чтения копии одного и того же состояния, которое никогда не передается между ними ( даже по ссылке ). Вообще говоря, это сработало очень хорошо. Теперь кто-то ввел одноэлементный кэш без …

7
Можете ли вы объяснить, почему нескольким потокам требуются блокировки на одноядерном процессоре?
Предположим, что эти потоки работают в одноядерном процессоре. В качестве процессора выполняется только одна инструкция за один цикл. То есть, даже думал, что они разделяют ресурс процессора. но компьютер обеспечит один раз одну инструкцию. Так что блокировка не нужна для многопоточности?

4
Программы, которые утверждают, что они не «многоядерные» дружественные
Вы видите эту фразу или подобное время от времени, как правило, относящуюся к программе, которая утверждает, что они не были разработаны, чтобы использовать все преимущества многоядерных процессоров. Это особенно характерно для программирования видеоигр. (конечно, многие программы не имеют параллелизма и не нуждаются в нем, такие как базовые сценарии и т. …

4
Использование постоянных структур данных в нефункциональных языках
Языки, которые являются чисто функциональными или почти чисто функциональными, извлекают выгоду из постоянных структур данных, потому что они неизменны и хорошо соответствуют стилю функционального программирования без сохранения состояния. Но время от времени мы видим библиотеки постоянных структур данных для языков (на основе состояний, ООП), таких как Java. Утверждение, часто звучащее …

2
Как я могу сделать универсальную конструкцию более эффективной?
«Универсальная конструкция» - это класс-оболочка для последовательного объекта, который позволяет его линеаризовать (условие строгой согласованности для параллельных объектов). Например, вот адаптированная конструкция без ожидания в Java из [1], которая предполагает существование очереди без ожидания, которая удовлетворяет интерфейсу WFQ(который требует единовременного согласования между потоками) и предполагает Sequentialинтерфейс: public interface WFQ<T> // …

3
BackgroundWorker против Async / Await
Я новичок в разработке на C # и хочу создать более отзывчивый интерфейс. В моем предварительном исследовании я видел два метода для достижения этой цели: Многопоточность в сочетании с классом BackgroundWorker. Более новые модификаторы Async / Await. Новое значит лучше? В чем разница между двумя методами? Если я хочу создать …

3
Соглашение об именовании объектов для блокировки выделенных потоков [закрыто]
Закрыто . Этот вопрос основан на мнении . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 4 года назад . Относительно незначительный вопрос, но я не смог найти официальную документацию или даже мнение / …

5
Каковы лучшие ресурсы для изучения параллелизма и многопоточных приложений? [закрыто]
Закрыто. Этот вопрос не по теме . В настоящее время не принимает ответы. Закрыто 4 года назад . Locked . Этот вопрос в настоящее время не принимает новые ответы или взаимодействия. Узнайте больше . Я понял, что у меня огромный пробел в знаниях, когда речь идет о многопоточных приложениях и …

3
Как асинхронная поддержка C # 5 поможет с проблемами синхронизации потоков пользовательского интерфейса?
Я где-то слышал, что C # 5 async-await будет настолько крутым, что вам не придется беспокоиться об этом: if (InvokeRequired) { BeginInvoke(...); return; } // do your stuff here Похоже, что обратный вызов операции ожидания произойдет в исходном потоке вызывающей стороны. Эрик Липперт и Андерс Хейлсберг неоднократно заявляли, что эта …

6
Решения для асинхронного повторного входа C # 5
Итак, меня что-то беспокоило в связи с новой поддержкой асинхронности в C # 5: Пользователь нажимает кнопку, которая запускает асинхронную операцию. Вызов немедленно возвращается, и насос сообщений снова начинает работать - вот и весь смысл. Таким образом, пользователь может снова нажать кнопку - вызывая повторный вход. Что если это проблема? …

2
Используют ли компиляторы многопоточность для ускорения компиляции?
Если я правильно помню курс по компиляторам, типичный компилятор имеет следующую упрощенную схему: Лексический анализатор сканирует (или вызывает некоторую функцию сканирования) исходный код посимвольно Строка входных символов проверяется на соответствие словаря лексем Если лексема действительна, она классифицируется как токен, которому она соответствует Парсер проверяет синтаксис комбинации токенов; токен за токеном …

1
Как я могу узнать, не злоупотребляю ли я многопоточностью?
В настоящее время я чувствую, что использую многопоточность. У меня есть 3 типа данных, A, B и C. Каждый Aможет быть преобразован в несколько Bs, и каждый Bможет быть преобразован в несколько Cs. Я заинтересован только в лечении Cс. Я мог бы написать это довольно легко с парой функций преобразования. …

5
Могут ли несколько процессоров / ядер получать доступ к одной и той же оперативной памяти одновременно?
Это то, что я думаю , произойдет: Если два ядра попытались получить доступ к одному и тому же адресу в ОЗУ, одному пришлось бы ждать, пока другое получит доступ к ОЗУ. Во второй раз, когда каждое ядро ​​будет пытаться получить доступ к одному и тому же адресу, они могут все …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.