В общем, вы должны иметь при себе календари и средства форматирования даты, потому что их создание и / или использование в первый раз обходятся дорого (я понял это нелегко).
Тем не менее, поток Сводка по безопасности перечисляет и NSCalendar, и NSFormatter (суперкласс NSDateFormatter) как «Thread-Unsafe», говоря:
Следующие классы и функции, как правило, не являются поточно-ориентированными.В большинстве случаев вы можете использовать эти классы из любого потока, если вы используете их только из одного потока за раз.Обратитесь к документации класса для получения дополнительной информации.
Я предлагаю поискать способ сделать оба.Это одно из преимуществ самостоятельного создания потоков с помощью NSThread: вы можете хранить календарь каждого потока в его словаре потоков .
В противном случае вам просто придется каждый раз создавать и выбрасывать каждый календарь.и оплатить стоимость исполнения.