Почему класс Singleton в iOS в сочетании с несколькими динамическими фреймворками приводит к созданию нескольких экземплIOS

Программируем под IOS
Ответить
Anonymous
 Почему класс Singleton в iOS в сочетании с несколькими динамическими фреймворками приводит к созданию нескольких экземпл

Сообщение Anonymous »

Демонстрация основного модуля проекта зависит от модуля, модуля и модуля. Описание подфайла всего проекта примерно следующее:

Код: Выделить всё

platform :ios, '13.0'
use_frameworks! :linkage => :static

workspace 'Module.xcworkspace'

def downloader
pod 'Downloader'
end

def treasureBox
pod 'TreasureBox'
end

abstract_target 'ModuleDemo' do

target "ModuleDemo" do
project 'ModuleDemo/ModuleDemo.xcodeproj'
downloader
end

target "ModuleA" do
project 'ModuleA/ModuleA.xcodeproj'
downloader
treasureBox
end

target "ModuleB" do
project 'ModuleB/ModuleB.xcodeproj'
downloader
treasureBox
end

target "ModuleC" do
project 'ModuleC/ModuleC.xcodeproj'
downloader
treasureBox
end
end
В ходе тестирования выяснилось, что, поскольку каждый модуль генерирует динамическую структуру, Downloader будет скопирован в каждый модуль. После запуска программы обнаруживается, что в памяти имеется несколько экземпляров синглтона Downloader. Могу я спросить, почему это так? Я понимаю, что синглтон должен гарантировать, что в одном процессе существует только один экземпляр, не так ли?

Подробнее здесь: https://stackoverflow.com/questions/793 ... ic-framewo
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»