En Transport, deen nëmmen beim Start e Proxy-Schnappschoss benotzt, kann no enger Netzwierk- oder Standortännerung veralt bleiwen. Fir en Abonnement op macOS SystemConfiguration hält dëse Liewenszyklus explizit:

  1. Erstellt eng SCDynamicStore-Sessioun mat engem Callback.
  2. Registréiert exakt Schlësselen oder Mustere mat SCDynamicStoreSetNotificationKeys. Dat sinn getrennte Arrays. De globalen Proxy-Schlëssel ass State:/Network/Global/Proxies; fügt dienstspezifesch Inpute just do bäi, wou den Transport se benotzt.
  3. Organiséiert d'Callback-Liwwerung iwwer SCDynamicStoreSetDispatchQueue oder déi passend Run-Loop-Quell. Nëmmen Nimm ze registréieren hëlt de Callback net.
  4. Bei enger Notifikatioun liest déi effektiv Konfiguratioun nach eng Kéier a maacht déi weider Aarbecht aktuell. D'Lëscht vun den geännerten Schlëssele ass net selwer déi komplett nei Politik.
  5. Beim Ausschalten deaktivéiert d'Liwwerung mat enger Null-Waarteschlange, ier eege Ressourcen fräiginn ginn. Hält de Store an de Callback-Kontext bis dohin lieweg.

Dem Apple seng Header definéiert eng eidel Lëscht vun den geännerten Schlësselen als Neistart vum Dynamiksstore-Server. Aktualiséiert och an deem Fall de relevante Stat a verwerft d'Unnahmen, déi op fréieren Inhalt baséieren.

Dëst ass en ëffentleche macOS-API-Approche. Dem Apple seng Headeren zeechnen déi entspriechend Funktiounen als private SPI fir iOS aus, dofir ass datselwecht Abonnement keng ëffentlech iOS-Applikatiounsschnittstell.

Ähnlech Artikelen