Bagikan melalui


MemoryMappedViewStream Kelas

Definisi

Mewakili tampilan file yang dipetakan memori sebagai aliran yang diakses secara berurutan.

public ref class MemoryMappedViewStream sealed : System::IO::UnmanagedMemoryStream
public sealed class MemoryMappedViewStream : System.IO.UnmanagedMemoryStream
type MemoryMappedViewStream = class
    inherit UnmanagedMemoryStream
Public NotInheritable Class MemoryMappedViewStream
Inherits UnmanagedMemoryStream
Warisan
MemoryMappedViewStream
Warisan

Contoh

Contoh berikut mendapatkan MemoryMappedViewStream file yang dipetakan memori dan menulis nilai ke aliran untuk komunikasi antarproses.

Contoh kode ini adalah bagian dari contoh yang lebih besar yang disediakan untuk metode MemoryMappedFile.CreateNew.

using (MemoryMappedViewStream stream = mmf.CreateViewStream())
{
    BinaryWriter writer = new BinaryWriter(stream);
    writer.Write(1);
}
Using Stream As MemoryMappedViewStream = mmf.CreateViewStream()
    Dim writer As BinaryWriter = New BinaryWriter(Stream)
    writer.Write(1)
End Using

Keterangan

Gunakan metode CreateViewStream objek MemoryMappedFile untuk mendapatkan aliran ini.

Properti

CanRead

Mendapatkan nilai yang menunjukkan apakah aliran mendukung pembacaan.

(Diperoleh dari UnmanagedMemoryStream)
CanSeek

Mendapatkan nilai yang menunjukkan apakah aliran mendukung pencarian.

(Diperoleh dari UnmanagedMemoryStream)
CanTimeout

Mendapatkan nilai yang menentukan apakah aliran saat ini dapat kehabisan waktu.

(Diperoleh dari Stream)
CanWrite

Mendapatkan nilai yang menunjukkan apakah aliran mendukung penulisan.

(Diperoleh dari UnmanagedMemoryStream)
Capacity

Mendapatkan panjang aliran (ukuran) atau jumlah total memori yang ditetapkan ke aliran (kapasitas).

(Diperoleh dari UnmanagedMemoryStream)
Length

Mendapatkan panjang data dalam aliran.

(Diperoleh dari UnmanagedMemoryStream)
PointerOffset

Mendapatkan jumlah byte di mana posisi awal tampilan ini diimbangi dari awal file yang dipetakan memori.

Position

Mendapatkan atau mengatur posisi saat ini dalam aliran.

(Diperoleh dari UnmanagedMemoryStream)
PositionPointer

Mendapatkan atau mengatur penunjuk byte ke aliran berdasarkan posisi saat ini di aliran.

(Diperoleh dari UnmanagedMemoryStream)
ReadTimeout

Mendapatkan atau menetapkan nilai, dalam milidetik, yang menentukan berapa lama aliran akan mencoba membaca sebelum waktu habis.

(Diperoleh dari Stream)
SafeMemoryMappedViewHandle

Mendapatkan handel ke tampilan file yang dipetakan memori.

WriteTimeout

Mendapatkan atau menetapkan nilai, dalam milidetik, yang menentukan berapa lama aliran akan mencoba menulis sebelum waktu habis.

(Diperoleh dari Stream)

Metode

BeginRead(Byte[], Int32, Int32, AsyncCallback, Object)

Memulai operasi baca asinkron. (Pertimbangkan untuk menggunakan ReadAsync(Byte[], Int32, Int32) sebagai gantinya.)

(Diperoleh dari Stream)
BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object)

Memulai operasi penulisan asinkron. (Pertimbangkan untuk menggunakan WriteAsync(Byte[], Int32, Int32) sebagai gantinya.)

(Diperoleh dari Stream)
Close()

Menutup aliran saat ini dan merilis sumber daya apa pun (seperti soket dan handel file) yang terkait dengan aliran saat ini. Alih-alih memanggil metode ini, pastikan aliran dibuang dengan benar.

(Diperoleh dari Stream)
CopyTo(Stream)

Membaca byte dari aliran saat ini dan menulisnya ke aliran lain. Kedua posisi aliran dimajukan dengan jumlah byte yang disalin.

(Diperoleh dari Stream)
CopyTo(Stream, Int32)

Membaca byte dari aliran saat ini dan menulisnya ke aliran lain, menggunakan ukuran buffer tertentu. Kedua posisi aliran dimajukan dengan jumlah byte yang disalin.

(Diperoleh dari Stream)
CopyToAsync(Stream)

Secara asinkron membaca byte dari aliran saat ini dan menulisnya ke aliran lain. Kedua posisi aliran dimajukan dengan jumlah byte yang disalin.

(Diperoleh dari Stream)
CopyToAsync(Stream, CancellationToken)

Secara asinkron membaca byte dari aliran saat ini dan menulisnya ke aliran lain, menggunakan token pembatalan tertentu. Kedua posisi aliran dimajukan dengan jumlah byte yang disalin.

(Diperoleh dari Stream)
CopyToAsync(Stream, Int32)

Secara asinkron membaca byte dari aliran saat ini dan menulisnya ke aliran lain, menggunakan ukuran buffer tertentu. Kedua posisi aliran dimajukan dengan jumlah byte yang disalin.

(Diperoleh dari Stream)
CopyToAsync(Stream, Int32, CancellationToken)

Secara asinkron membaca byte dari aliran saat ini dan menulisnya ke aliran lain, menggunakan ukuran buffer dan token pembatalan yang ditentukan. Kedua posisi aliran dimajukan dengan jumlah byte yang disalin.

(Diperoleh dari Stream)
CreateObjRef(Type)

Membuat objek yang berisi semua informasi relevan yang diperlukan untuk menghasilkan proksi yang digunakan untuk berkomunikasi dengan objek jarak jauh.

(Diperoleh dari MarshalByRefObject)
CreateWaitHandle()
Kedaluwarsa.
Kedaluwarsa.
Kedaluwarsa.

Mengalokasikan objek WaitHandle.

(Diperoleh dari Stream)
Dispose()

Merilis semua sumber daya yang digunakan oleh Stream.

(Diperoleh dari Stream)
Dispose(Boolean)

Merilis sumber daya yang tidak dikelola yang digunakan oleh UnmanagedMemoryStream dan secara opsional merilis sumber daya terkelola.

(Diperoleh dari UnmanagedMemoryStream)
DisposeAsync()

Secara asinkron merilis sumber daya yang tidak dikelola yang digunakan oleh Stream.

(Diperoleh dari Stream)
EndRead(IAsyncResult)

Menunggu pembacaan asinkron yang tertunda selesai. (Pertimbangkan untuk menggunakan ReadAsync(Byte[], Int32, Int32) sebagai gantinya.)

(Diperoleh dari Stream)
EndWrite(IAsyncResult)

Mengakhiri operasi penulisan asinkron. (Pertimbangkan untuk menggunakan WriteAsync(Byte[], Int32, Int32) sebagai gantinya.)

(Diperoleh dari Stream)
Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
Flush()

Menghapus semua buffer untuk aliran ini dan menyebabkan data buffer ditulis ke file yang mendasar.

FlushAsync()

Secara asinkron menghapus semua buffer untuk aliran ini dan menyebabkan data yang di-buffer ditulis ke perangkat yang mendasar.

(Diperoleh dari Stream)
FlushAsync(CancellationToken)

Mengambil alih metode FlushAsync(CancellationToken) sehingga operasi dibatalkan jika ditentukan, tetapi tidak ada tindakan lain yang dilakukan.

(Diperoleh dari UnmanagedMemoryStream)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetLifetimeService()
Kedaluwarsa.

Mengambil objek layanan seumur hidup saat ini yang mengontrol kebijakan seumur hidup untuk instans ini.

(Diperoleh dari MarshalByRefObject)
GetType()

Mendapatkan Type instans saat ini.

(Diperoleh dari Object)
Initialize(Byte*, Int64, Int64, FileAccess)

Menginisialisasi instans baru kelas UnmanagedMemoryStream dengan menggunakan penunjuk ke lokasi memori yang tidak dikelola.

(Diperoleh dari UnmanagedMemoryStream)
Initialize(SafeBuffer, Int64, Int64, FileAccess)

Menginisialisasi instans baru kelas UnmanagedMemoryStream dalam buffer aman dengan offset, panjang, dan akses file tertentu.

(Diperoleh dari UnmanagedMemoryStream)
InitializeLifetimeService()
Kedaluwarsa.

Mendapatkan objek layanan seumur hidup untuk mengontrol kebijakan seumur hidup untuk instans ini.

(Diperoleh dari MarshalByRefObject)
MemberwiseClone()

Membuat salinan dangkal dari Objectsaat ini.

(Diperoleh dari Object)
MemberwiseClone(Boolean)

Membuat salinan dangkal objek MarshalByRefObject saat ini.

(Diperoleh dari MarshalByRefObject)
ObjectInvariant()
Kedaluwarsa.

Menyediakan dukungan untuk Contract.

(Diperoleh dari Stream)
Read(Byte[], Int32, Int32)

Membaca jumlah byte yang ditentukan ke dalam array yang ditentukan.

(Diperoleh dari UnmanagedMemoryStream)
Read(Span<Byte>)

Membaca semua byte aliran memori yang tidak dikelola ini ke dalam rentang byte yang ditentukan.

(Diperoleh dari UnmanagedMemoryStream)
ReadAsync(Byte[], Int32, Int32)

Secara asinkron membaca urutan byte dari aliran saat ini dan memajukan posisi dalam aliran dengan jumlah byte yang dibaca.

(Diperoleh dari Stream)
ReadAsync(Byte[], Int32, Int32, CancellationToken)

Secara asinkron membaca jumlah byte yang ditentukan ke dalam array yang ditentukan.

(Diperoleh dari UnmanagedMemoryStream)
ReadAsync(Memory<Byte>, CancellationToken)

Secara asinkron membaca byte aliran memori yang tidak dikelola ke wilayah memori.

(Diperoleh dari UnmanagedMemoryStream)
ReadAtLeast(Span<Byte>, Int32, Boolean)

Membaca setidaknya jumlah minimum byte dari aliran saat ini dan memajukan posisi dalam aliran dengan jumlah byte yang dibaca.

(Diperoleh dari Stream)
ReadAtLeastAsync(Memory<Byte>, Int32, Boolean, CancellationToken)

Secara asinkron membaca setidaknya jumlah minimum byte dari aliran saat ini, memajukan posisi dalam aliran dengan jumlah byte yang dibaca, dan memantau permintaan pembatalan.

(Diperoleh dari Stream)
ReadByte()

Membaca byte dari aliran dan memajukan posisi dalam aliran dengan satu byte, atau mengembalikan -1 jika di akhir aliran.

(Diperoleh dari UnmanagedMemoryStream)
ReadExactly(Byte[], Int32, Int32)

Membaca count jumlah byte dari aliran saat ini dan memajukan posisi dalam aliran.

(Diperoleh dari Stream)
ReadExactly(Span<Byte>)

Membaca byte dari aliran saat ini dan memajukan posisi dalam aliran hingga buffer terisi.

(Diperoleh dari Stream)
ReadExactlyAsync(Byte[], Int32, Int32, CancellationToken)

Membaca secara asinkron count jumlah byte dari aliran saat ini, memajukan posisi dalam aliran, dan memantau permintaan pembatalan.

(Diperoleh dari Stream)
ReadExactlyAsync(Memory<Byte>, CancellationToken)

Membaca byte secara asinkron dari aliran saat ini, memajukan posisi dalam aliran hingga buffer terisi, dan memantau permintaan pembatalan.

(Diperoleh dari Stream)
Seek(Int64, SeekOrigin)

Mengatur posisi aliran saat ini ke nilai yang diberikan.

(Diperoleh dari UnmanagedMemoryStream)
SetLength(Int64)

Mengatur panjang aliran saat ini.

ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)
Write(Byte[], Int32, Int32)

Menulis blok byte ke aliran saat ini menggunakan data dari buffer.

(Diperoleh dari UnmanagedMemoryStream)
Write(ReadOnlySpan<Byte>)

Menulis blok byte ke aliran memori yang tidak dikelola saat ini menggunakan data dari rentang byte yang disediakan.

(Diperoleh dari UnmanagedMemoryStream)
WriteAsync(Byte[], Int32, Int32)

Secara asinkron menulis urutan byte ke aliran saat ini dan memajukan posisi saat ini dalam aliran ini dengan jumlah byte yang ditulis.

(Diperoleh dari Stream)
WriteAsync(Byte[], Int32, Int32, CancellationToken)

Secara asinkron menulis urutan byte ke aliran saat ini, memajukan posisi saat ini dalam aliran ini dengan jumlah byte yang ditulis, dan memantau permintaan pembatalan.

(Diperoleh dari UnmanagedMemoryStream)
WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Secara asinkron menulis rentang byte ke aliran saat ini, memajukan posisi saat ini dalam aliran ini dengan jumlah byte yang ditulis, dan memantau permintaan pembatalan.

(Diperoleh dari UnmanagedMemoryStream)
WriteByte(Byte)

Menulis byte ke posisi saat ini dalam aliran file.

(Diperoleh dari UnmanagedMemoryStream)

Metode Ekstensi

CopyToAsync(Stream, PipeWriter, CancellationToken)

Secara asinkron membaca byte dari Stream dan menulisnya ke PipeWriteryang ditentukan , menggunakan token pembatalan.

ConfigureAwait(IAsyncDisposable, Boolean)

Mengonfigurasi bagaimana menunggu tugas yang dikembalikan dari asinkron sekali pakai akan dilakukan.

Berlaku untuk

Lihat juga

  • File Memory-Mapped