ios - 多播代理和通知的优缺点
大家讲道理
大家讲道理 2017-04-18 09:24:50
0
1
488

为什么我们使用多播代理而不使用通知呢?
多播代理的具体应用场景有哪些?
求大神指导

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

membalas semua(1)
左手右手慢动作

Soalan yang bagus.
1. Penjelasan yang saya pelajari ialah: pemberitahuan akan menyebabkan gangguan Contohnya, jika anda ingin memuat turun tiga gambar A, B dan C, dan A selesai memuat turun, pemberitahuan akan dihantar, dan tempat di mana gambar. B dan C sedang menunggu pemberitahuan juga akan menerimanya, tetapi mereka tidak perlu melakukannya.

Saya rasa masalah ini boleh diselesaikan Cuma tambahkan pengenalan yang sepadan pada setiap tugasan. Contohnya, dalam kes memuat turun imej di atas, nama pemberitahuan ditetapkan kepada "loadImage_" + bahagian terakhir url. Dan pemberitahuan itu boleh menentukan pengirim

- (void)addObserver:(id)observer selector:(SEL)aSelector name:(nullable NSString *)aName object:(nullable id)anObject;

最后一个参数就是指定发送者

2. Saya rasa ia boleh digunakan secara santai. Terdapat beberapa kelebihan untuk menggunakan proksi: nama kaedah perwakilan telah ditakrifkan, definisi antara muka adalah jelas, dan anda tahu parameter yang perlu dilalui, yang lebih baik untuk pembangunan kolaboratif atau pembinaan roda. Pemberitahuan biasanya bergantung pada maklumat pengguna untuk lulus parameter Ini adalah kamus tanpa jenis yang ditentukan Struktur data di dalamnya tidak pasti, dan ia tidak begitu jelas.

3. Sebenarnya, saya rasa lebih baik menggunakan blok atau penutup.

  • Berbilang perwakilan perlu ditambahkan pada tatasusunan, menghasilkan rujukan yang kukuh dan kemungkinan masalah rujukan pekeliling.

  • Saya rasa blok lebih menyeronokkan untuk ditulis Anda boleh menulis kod panggil balik di sebelahnya, seperti memuat turun gambar,

var name:string = "xxx"
downloadImageWithCompleteHander:{
    //回调后的逻辑可以直接写在这里
    //可以直接使用这个临时变量name,因为block的copy性质
}

Bagi delegasi, anda perlu menulis kaedah lain, terutamanya jika beberapa parameter perlu diluluskan Apabila menggunakan perwakilan, anda perlu menukar halaman pembolehubah sementara tersebut kepada pembolehubah ahli, jika tidak, ia tidak boleh digunakan merentas kaedah

  • Blok terakhir mempunyai sifat pengasingan yang baik.
    Sebagai contoh, gunakan satu contoh untuk mengurus semua muat turun imej, dengan mengandaikan ia dipanggil loadManager Jika anda menggunakan berbilang perwakilan, anda masih perlu membezakan antara tugas muat turun yang berbeza, kerana semua tugas muat turun pergi ke satu perkara, loadManager dan. terdapat banyak Senarai delegasi mengandungi delegasi untuk tugas muat turun yang berbeza, yang masih perlu dibezakan. Tetapi menggunakan blok, mereka boleh diasingkan secara semula jadi Penjelasannya lebih rumit, iaitu, blok bersarang di antara satu sama lain dan diasingkan dari awal.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan