Domanda

questa domanda mi dice che SoapHttpClientProtocol non è thread-safe. E, il mio test di vita reale mi dice che questo è vero, come le mie proprietà SoapHeader tenere sempre mescolati tra le chiamate. C'è un modo per assicurarsi che posso usare questo filoni all'interno e mantenere le mie proprietà corretta? E assicurarsi che non corro nel l'esempio dato in questa domanda di un thread pensando la connessione è aperta, quando un altro thread è la chiuse? Ho bisogno di preoccuparsi per i valori di intestazione di sapone dopo la mia richiesta è stata fatta? Come posso verificare le proprietà sono come li ho impostato fino al rilascio della richiesta?

È stato utile?

Soluzione

La prima cosa che vorrei porre è fa il tuo lavoro di servizio in modo corretto se non ce la fai multi-threaded. Se si effettua le chiamate successive fanno tutto il lavoro correttamente e vi darà i risultati desiderati? Se poi non c'è un problema sul lato server più che probabile.

Per vedere che cosa si sta inviando è possibile serializzare giù il messaggio sapone prima va. Assicurarsi che si sta facendo generato correttamente.

I miei blocchi di posti di lavoro l'accesso a un sacco di siti web, ma CodeProject ha alcuni esempi, se non ricordo male.

Se le singole opere filo avere lo strato di serializzazione in luogo e lo hanno scrivere i file su disco nello scenario multi-threaded. Poi si può vedere ciò che funziona e ciò che non è di che cosa il vostro codice pensa che sia l'invio.

Molto probabilmente le chiamate sono sempre mescolati dal server dal momento che si sta tentando di stabilire connessioni multiple mentre può essere vedere il tuo punto finale come un valore, un po 'come essere dietro un firewall NAT. Il che significa si può essere sempre un collegamento, ma uno dei vostri altri thread ottiene il suo messaggio attraverso il primo. Se questo è il caso si potrebbe provare a girare ogni thread in essa del proprio dominio applicazione e vedere se lo fa qualsiasi cosa per te. Non dire che funziona, ma non è sicuro fuori dalla parte superiore della mia testa che altro possono essere disponibili per voi di provare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top