Нишка objectoutputstream objectinputstream блокира не чете

Кодът ми е болен; това, което изглежда като доста ясна операция за запис и четене на обект, изглежда никога не задейства своите вторични операции. Нишка от вътрешен клас на отдалечения партньор изпраща ConcurrentHashMap през OOS.

Когато това пристигне - и това се случва, добре - получаващият код продължава, в определен от булев цикъл, да слуша OIS за актуализации на този CCHM. Тези актуализации идват от братя и сестри на този, който е изпратил оригиналния CCHM (има един обслужващ брат или сестра на получаващ партньор). Използваните от тези братя и сестри ObjectOutputStreams са взети от видими HashMap от братята и сестрите. Братята и сестрите не се интересуват дали изпращат до нов член на групата или до съществуващ. Разликата по отношение на това дали даден партньор е нов или съществуващ, е известна само от страната на приемащия партньор, където се получава и използва оригиналният CCHM, а след това кодът продължава да чака актуализации на същата OIS. Новите партньори, които се присъединяват, имат своите подробности, добавени към Hashtable на дистанционното управление, така че CCHM, който трябва да бъде изпратен, е с един елемент по-голям всеки път, когато се изпраща до всички партньори (новия плюс n съществуващия).

Но съществуващите партньори не получават актуализирания CCHM. Вместо да запълвам кода си с System.out.println() извиквания или да го спирам грубо, какви капани вероятно съм пренебрегнал, за да се забъркам в тази бъркотия?


person user1410059    schedule 22.08.2012    source източник
comment
Можете ли всъщност да дадете някакъв код, моля?   -  person DankMemes    schedule 23.08.2012


Отговори (1)