И клетки встретившись могут подраться, спарится, просто разойтись, слипнуться в многоклеточный организм. Еще что-нибудь. И таких событий событий может быть много одновременно, но до миллионов я уж не буду доводить. Вот я и думаю как их обрабатывать одновременно. При этом получается, что возможны одновременные обращения к списку этих клеток, например, двух клеток одновременно съели и они должны быть удалены из списка, ну это можно сделать асинхронно. Но в это время все остальные пробегаются по этому списку и ищут с кем они пересекаются. Тогда могут быть какие-то коллизии. Одним словом, возникает много нюансов... не внимательно прочитал сразу.. ))
Хотя иногда сами собеседующие нормально не могут нормально и однозначно про них рассказать, если спросить)значимое наблюдение ;))

вам самим лень или же вы просто не в состоянии решить этоэто очень наивная (и увы не редкая точка зрения).. у меня есть и время.. и любопытство.. и желание помогать новичкам.. иногда.. и не только кодом )).. возможно и психологически )) оздоровительно ))
... как намек - мс совладельцы (ведущие) фонда open suse, которые, в свою очередь, ведущие разработчики KDE... ;)))