Enet4 / dicom-rs

Rust implementation of the DICOM standard
https://dicom-rs.github.io
Apache License 2.0
402 stars 75 forks source link

MAIN: Add read/write timeout options for ClientAssociation #530

Closed naterichman closed 5 days ago

naterichman commented 6 days ago

Small MR to add read/write timeouts for the TCPStream on a ClientAssociation object.

I am using the client extensively and find that some pacs servers (presumably when under load) are taking 1000+s to respond to a c-move.

Additionally when I get around to it I will add over my c-move implementation.

As a side-note I've used it as a learning point for async rust and have made processes as async as possible (i.e just spawn_blocking as little as I can) and that has been interesting, but it would definitely be great to make the Client and Server async compatible themselves.