Një transport që përdor një pamje të proxy-t vetëm në nisje mund të mbetet i vjetëruar pas një ndryshimi rrjeti ose vendndodhjeje. Për një abonim macOS SystemConfiguration, mbajeni këtë cikël jete të qartë:

  1. Krijoni një sesion SCDynamicStore me një callback.
  2. Regjistroni çelësa ose modele të sakta me SCDynamicStoreSetNotificationKeys. Janë vargje të veçanta. Çelësi global i proxy-t është State:/Network/Global/Proxies; shtoni hyrje specifike për shërbimin vetëm aty ku transporti i përdor ato.
  3. Organizoni dorëzimin e callback-ut përmes SCDynamicStoreSetDispatchQueue ose burimit të duhur run-loop. Regjistrimi vetëm i emrave nuk e ekzekuton callback-un.
  4. Në njoftim, rilexoni konfigurimin efektiv dhe përditësoni punën pasuese. Lista e çelësave të ndryshuar nuk është në vetvete politika e re e plotë.
  5. Në mbyllje, çaktivizoni dorëzimin me një radhë zero përpara se të lironi burimet e zotëruara. Mbani ruajtjen dhe kontekstin e callback-ut gjallë deri atëherë.

Kokëza e Apple përcakton një listë bosh të çelësave të ndryshuar si një rinisje të serverit të ruajtjes dinamike. Edhe në atë rast, rifreskoni gjendjen përkatëse dhe hidhni poshtë supozimet e bazuara në përmbajtjen e mëparshme.

Ky është një qasje API macOS publik. Kokëzat e Apple i shënojnë funksionet përkatëse si SPI privat për iOS, prandaj i njëjti abonim nuk është ndërfaqe publike aplikacioni iOS.

Artikuj të ngjashëm