2016-08-08 13 views
1

Wenn ein Client die Verbindung trennt, muss er vorher abbestellt werden?MQtt: Muss ich mich abmelden?

ich ursprünglich dachte, es war, aber dann, wenn ein Client unerwartet trennt, können Sie nicht abmelden ..

daher Abbestellen ist sinnlos, wenn Sie immer noch verbunden sind und wollen nicht länger Nachrichten empfangen ..

Ist das eine korrekte Annahme?

Antwort

4

Wenn Sie eine Verbindung mit dem clean session-Flag auf 1 festgelegt haben, werden beim Entfernen des Brokers alle Ihre Abonnements und andere Informationen entfernt.

Wenn clean session-0 gesetzt wurde, wenn Sie verbunden sind, dann sind Ihre Abonnements beim Broker gespeichert, bis Sie sich abmelden (oder mit clean session Satz 1 zu einem späteren Zeitpunkt wieder aufzunehmen)

+0

... und wenn verwendet, ist eine saubere session false/0 und Sie abonnieren es erneut, wird es keinen Fehler geben, es wird ein No-Op sein? – pstanton

+1

Wenn Sie sich erneut anmelden, erhalten Sie die gespeicherten Nachrichten erneut, aber ansonsten wird kein Fehler verursacht. – ralight

Verwandte Themen