Próbuję wysłać ciąg znaków przez nazwaną potok przy użyciu StreamWriter, ale klasa StreamWriter oferuje tylko operacje synchroniczne. Mogę użyć metody BeginWrite klasy NamedPipeServerStream, ale zastanawiam się, dlaczego nie ma klas pisarzy, które umożliwiłyby operacje asynchroniczne. Czy brakuje mi czegoś oczywistego?Używanie nazwanych potoków asynchronicznie z StreamWriter
5
A
Odpowiedz
2
Byłoby to znacznie bardziej skomplikowane niż w przypadku nieprzetworzonych strumieni. W przypadku nieprzetworzonych strumieni każda ilość danych może być asynchroniczna, a system po prostu przekazuje Ci bufor. Czytnik wymaga kodowania znaków, które może przekształcić kilka bajtów nieprzetworzonych danych w jeden znak Unicode. Nie byłoby to niemożliwe, biblioteki szkieletowe nie wykorzystują go tak daleko, więc sam musisz to zrobić.
(W zależności od potrzeb, tworząc inny wątek i wykonując operacje synchronicznie na nim mogą łatwiej napisać swój program. Zauważ, że skalowalność byłaby ogólnie być wyższa, gdy używasz Begin/End asynchronicznie.)
Powiązane problemy
- 1. Przykład nazwanych potoków
- 2. Jak wprowadzić do fd zamiast nazwanych potoków?
- 3. Odwołania nazwanych potoków nie działa z ASP.NET MVC 4
- 4. Używanie potoków wieloprocesorowych w pytonie
- 5. Czy Java może działać jako serwer nazwanych potoków?
- 6. W systemie Windows mogę używać nazwanych potoków jako plików?
- 7. C++ Używanie okien nazwanych rurami
- 8. Używanie "przecinków" lub "potoków" w obrębie JunitParams
- 9. Mediatr 3.0 Używanie zachowania potoków do uwierzytelniania
- 10. HQL: używanie Boolean w nazwanych zapytaniach
- 11. Jak obsługiwać powiązanie nazwanych potoków sieciowych z włączoną aplikacją wcf w iis?
- 12. Monitorowanie nazwanych rur w języku C#
- 13. Używanie parametrów nazwanych SQL Server z ExecuteStoreQuery i ExecuteStoreCommand
- 14. Streamwriter vs StringBuilder
- 15. Wysokowydajne buforowanie strumienia potoków
- 16. Jak mogę uzyskać listę wszystkich otwartych nazwanych potoków w systemie Windows?
- 17. Jakie jest właściwe miejsce do umieszczania nazwanych potoków w systemie Linux?
- 18. Jak używać funkcji ankiety C do oglądania nazwanych potoków w systemie Linux?
- 19. Napis StreamWriter do MemoryStream
- 20. Z StreamWriter nie działa \ n (C#)
- 21. nazwanych parametrów
- 22. C# Jednostka Testuj parametr StreamWriter
- 23. Tworzenie potoków Windows 8
- 24. Używanie nazwanych grup przechwytywania wewnątrz bloków gyub Ruby (regex)
- 25. Używanie StreamWriter do implementacji dziennika toczenia i usuwanie z górnej wersji
- 26. Netty zagnieżdżonych potoków/multipleksowanie
- 27. NumPy, nazwanych kolumn
- 28. Groovy: nazwanych konstruktorów parametrów
- 29. Jak wolne są gniazda TCP w porównaniu do nazwanych potoków w systemie Windows dla lokalnego hosta IPC?
- 30. Dołącz linie do pliku, używając StreamWriter
I wiem, że pytanie http://stackoverflow.com/questions/3015748/how-to-a-non-waiting-write-ona-a-named-pipe-c jest bardzo podobne, ale zastanawiam się, dlaczego klasy .NET Writera nie oferują tej funkcji. Czy brakuje mi jakiegoś oczywistego powodu? – Lenik