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

Параллельность - это свойство систем, в которых одновременно выполняется несколько процессов.

107
Разница между «параллельным» и «параллельным» исполнением?

В чем разница между терминами параллельного и параллельного выполнения? Я никогда не мог понять разницу. Тег определяет параллелизм как способ запуска двух процессов одновременно, но я думал, что параллелизм - это одно и то же, то есть: отдельные потоки или процессы, которые потенциально могут...

84
Как объяснить, почему многопоточность сложна

Я довольно хороший программист, мой начальник также довольно хороший программист. Хотя он, кажется, недооценивает некоторые задачи, такие как многопоточность, и насколько сложно это может быть (я нахожу это очень трудным для чего-то большего, чем запуск нескольких потоков, ожидание завершения всех,...

79
Почему одновременные записи не разрешены в базе данных SQLite?

Я занимаюсь программированием баз данных, используя Java с SQLite. Я обнаружил, что только одно соединение одновременно с базой данных имеет возможность записи, в то время как многие соединения одновременно имеют возможность чтения. Почему архитектура SQLite была разработана таким образом? Пока две...

62
Является ли объединение объектов устаревшей техникой?

Я очень хорошо знаком с концепцией пула объектов и всегда стараюсь максимально использовать ее. Кроме того, я всегда думал, что пул объектов является стандартной нормой, так как я заметил, что как сама Java, так и другие платформы используют пул в максимально возможной степени. Хотя недавно я...

57
Есть ли разница между волокнами, сопрограммами и зелеными нитями, и если это так, что это?

Сегодня я читал в Интернете несколько статей о волокнах, сопрограммах и зеленых нитях, и кажется, что эти понятия имеют много общего, но есть небольшие различия, особенно когда мы говорим о волокнах и сопрограммах. Есть ли краткое, правильное резюме того, что отличает их друг от друга? Обновление:...

47
Являются ли пулы goroutine go-langs просто зелеными нитями?

Комментатор здесь предлагает следующую критику зеленых нитей: Первоначально я был продан на модели N: M как средство программирования, управляемого событиями, без ада обратного вызова. Вы можете написать код, который выглядит как боль старый процедурный код, но под ним есть магия, которая...

40
Современный язык программирования с интуитивно понятными абстракциями параллельного программирования [закрыто]

Я заинтересован в изучении параллельного программирования, ориентируясь на уровень приложения / пользователя (не системное программирование). Я ищу современный язык программирования высокого уровня, который предоставляет интуитивные абстракции для написания параллельных приложений. Я хочу...

37
Параллелизм: как вы подходите к дизайну и отлаживаете реализацию?

Я разрабатываю параллельные системы уже несколько лет, и у меня есть довольно хорошее представление об этом предмете, несмотря на отсутствие формального обучения (то есть, отсутствие степени). Есть несколько новых языков, которые стали популярными, по крайней мере, в последнее время, чтобы говорить...

36
Существуют ли устаревшие методы многопоточного и многопроцессорного программирования, которые я больше не должен использовать?

В первые дни FORTRAN и BASIC, по существу, все программы были написаны с заявлениями GOTO. Результатом стал код спагетти, а решение - структурированное программирование. Точно так же указателям может быть сложно контролировать характеристики в наших программах. C ++ начинался с множества...

35
Как Rust расходится с возможностями параллелизма в C ++?

Вопросов Я пытаюсь понять, улучшает ли Rust фундаментально и достаточно средства параллелизма в C ++, чтобы решить, стоит ли мне тратить время на изучение Rust. В частности, как идиоматический Rust улучшается или, во всяком случае, расходится с возможностями параллелизма идиоматического C ++?...

34
Как система бронирования мест в кинотеатре не позволяет нескольким пользователям бронировать одни и те же места?

В кинотеатре я иду к билетным киоскам, которые позволяют вам выбрать нужные места; у них также есть веб-сайт, который делает то же самое (веб-сайт также имеет таймер обратного отсчета около 30 секунд, в течение которого вы должны выбрать место). Хотя я понимаю такие вещи, как транзакции с базой...

33
Почему не зеленые нити?

Хотя я знаю, что вопросы по этому вопросу уже были рассмотрены (например, https://stackoverflow.com/questions/5713142/green-threads-vs-non-green-threads ), я не чувствую, что получил удовлетворительный ответ , Вопрос в том, почему JVM больше не поддерживает зеленые потоки? Об этом говорится в...

31
Должен ли я придерживаться или отказаться от Python для борьбы с параллелизмом?

У меня есть проект 10K LOC, написанный на Django с большим количеством Celery ( RabbitMQ ) для асинхронности и фоновых заданий, где это необходимо, и я пришел к выводу, что части системы выиграют от того, что будут переписаны в чем-то отличном от Django для лучшего параллелизма , Причины включают в...

27
Сколько работы я должен поместить в оператор блокировки?

Я - младший разработчик, работающий над написанием обновления для программного обеспечения, которое получает данные от стороннего решения, сохраняет их в базе данных и затем обрабатывает данные для использования другим сторонним решением. Наше программное обеспечение работает как служба Windows....

25
UML-диаграммы многопоточных приложений

Для однопоточных приложений мне нравится использовать диаграммы классов, чтобы получить представление об архитектуре этого приложения. Этот тип диаграммы, однако, не очень помог при попытке понять многопоточные / параллельные приложения, например, потому что разные экземпляры класса «живут» в...

24
Что предотвращает состояние гонки на замке?

Я понимаю основы того, что такое гонки данных, и как блокировки / мьютексы / семафоры помогают предотвратить их. Но что произойдет, если у вас будет «состояние гонки» на самом замке? Например, два разных потока, возможно, в одном приложении, но работающие на разных процессорах, пытаются получить...

23
Почему многопоточность часто предпочтительнее для повышения производительности?

Этот вопрос был перенесен из переполнения стека, потому что на него можно ответить в Software Engineering Stack Exchange. Мигрировал 7 лет назад . У меня вопрос, почему программисты любят параллельные и многопоточные программы вообще. Я рассматриваю 2 основных подхода: асинхронный подход,...

23
Функция гарантированно никогда не возвращает одно и то же значение дважды [закрыто]

Закрыто . Этот вопрос должен быть более сфокусированным . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он был сосредоточен только на одной проблеме, отредактировав этот пост . Закрыто 5 лет назад . Это вопрос, который мне задали на собеседовании, и я...

22
SQLite с двумя процессами Python, обращающимися к нему: одно чтение, одно письмо

Я разрабатываю небольшую систему с двумя компонентами: один опрашивает данные с интернет-ресурса и переводит их в данные sql, чтобы сохранить их локально; второй читает эти данные sql из локального экземпляра и передает их через json и остальные API. Первоначально я планировал сохранить данные с...

21
Функциональное программирование: правильные представления о параллелизме и состоянии?

Сторонники FP утверждают, что параллелизм прост, потому что их парадигма избегает изменчивого состояния. Я не понимаю Представьте, что мы создаем многопользовательское сканирование подземелий (roguelike), используя FP, где мы подчеркиваем чистые функции и неизменные структуры данных. Мы создаем...