我想消耗在舊貨服務的流,例如,在服務的方法有一個流或作爲參數類似的方法(例如,爲了能夠將IDataReader的結果序列化爲流,然後反序列化對其他服務器端數據的引用)。發送流作爲在Apache的節儉C#中的屬性
我不認爲這是明確的可能,但我不知道是否有另一種方式來實現類似的東西。
謝謝。
我想消耗在舊貨服務的流,例如,在服務的方法有一個流或作爲參數類似的方法(例如,爲了能夠將IDataReader的結果序列化爲流,然後反序列化對其他服務器端數據的引用)。發送流作爲在Apache的節儉C#中的屬性
我不認爲這是明確的可能,但我不知道是否有另一種方式來實現類似的東西。
謝謝。
Apache thrift不支持發送流。你可以得到最接近的是發送一個字節數組。
爲了實現流般的體驗使用節儉,你可以創建一個返回流的字節數組的形式下一部分的接口。
在C#語法它看起來像傳遞到ReadNextBlock在每次調用
interface MyService
{
int OpenStream(string path);
byte[] ReadNextBlock(int openedStreamId, long maxBlockSize);
}
的OpenStream返回 「流ID」。在您的服務器端,您可以持有一個Dictionary(key - openStreamID,value - Stream),用於保持源流打開並從中讀取下一個塊。
您也可以創建客戶端一個輔助類,這將是流後裔,並且使用的OpenStream和ReadNextBlock獲取的實際數據。
的[如何流從Python來C++使用Apache節儉的圖像](http://stackoverflow.com/questions/26739520/how-to-stream-an-image-from-python-to-c可能重複-using-apache-thrift) – JensG 2015-01-04 17:54:13