Pertanyaan yang diberi tag «multithreading»

Multi-threading adalah kemampuan komputer atau program untuk melakukan pekerjaan secara bersamaan atau tidak sinkron dengan memanfaatkan beberapa aliran eksekusi secara bersamaan (umumnya disebut sebagai utas).

7
Apakah pintar mengganti boost :: utas dan boost :: mutex dengan c ++ 11 yang setara?
Motivasi: alasan mengapa saya mempertimbangkannya adalah bahwa manajer proyek jenius saya berpikir bahwa dorongan adalah ketergantungan lain dan itu mengerikan karena "Anda bergantung padanya" (Saya mencoba menjelaskan kualitas dorongan, kemudian menyerah setelah beberapa waktu :( Alasan yang lebih kecil mengapa saya ingin melakukannya adalah karena saya ingin mempelajari fitur c …

13
Bisakah num ++ menjadi atom untuk 'int num'?
Secara umum, untuk int num, num++(atau ++num), sebagai operasi baca-modifikasi-tulis, bukan atom . Tapi saya sering melihat kompiler, misalnya GCC , menghasilkan kode berikut untuk itu ( coba di sini ): Karena baris 5, yang sesuai dengan num++satu instruksi, dapatkah kita menyimpulkan bahwa num++ atom dalam hal ini? Dan jika …

6
Apa yang terjadi pada utas terpisah ketika main () keluar?
Asumsikan saya memulai std::threaddan kemudian detach(), jadi utas terus mengeksekusi meskipun std::threadyang pernah mewakilinya, keluar dari ruang lingkup. Asumsikan lebih lanjut bahwa program tidak memiliki protokol yang dapat diandalkan untuk bergabung dengan utas yang dilepaskan 1 , sehingga utas yang terlepas masih berjalan saat main()keluar. Saya tidak dapat menemukan apa …

9
Praktik terbaik: AsyncTask selama perubahan orientasi
AsyncTask adalah hal yang hebat untuk menjalankan tugas kompleks di utas lainnya. Tetapi ketika ada perubahan orientasi atau perubahan konfigurasi lain saat AsyncTaskmasih berjalan, saat Activityini dihancurkan dan restart. Dan ketika instance AsyncTaskterhubung ke aktivitas itu, ia gagal dan menyebabkan jendela pesan "tutup paksa". Jadi, saya mencari semacam "praktik terbaik" …

5
Concurrent HashSet <T> dalam .NET Framework?
Saya memiliki kelas berikut. class Test{ public HashSet&lt;string&gt; Data = new HashSet&lt;string&gt;(); } Saya perlu mengubah bidang "Data" dari utas yang berbeda, jadi saya ingin beberapa pendapat tentang implementasi utas saat ini yang aman. class Test{ public HashSet&lt;string&gt; Data = new HashSet&lt;string&gt;(); public void Add(string Val){ lock(Data) Data.Add(Val); } public …


6
Kapan menggunakan enumerateObjectsUsingBlock vs. for
Selain perbedaan yang jelas: Menggunakan enumerateObjectsUsingBlock saat Anda membutuhkan indeks dan objek Jangan gunakan enumerateObjectsUsingBlockketika Anda perlu memodifikasi variabel lokal (saya salah tentang ini, lihat jawaban bbum) Apakah enumerateObjectsUsingBlockumumnya dianggap lebih baik atau lebih buruk ketika for (id obj in myArray)juga akan bekerja? Apa kelebihan / kekurangannya (misalnya performanya kurang …


1
Bagaimana cara mendapatkan Thread.Sleep yang menunggu?
Saya sedang menulis aplikasi terikat jaringan berdasarkan paradigma menunggu / tidur. Terkadang, kesalahan koneksi terjadi, dan menurut pengalaman saya, sebaiknya menunggu beberapa saat dan kemudian mencoba kembali operasi. Masalahnya adalah jika saya menggunakan Thread.Sleep atau operasi pemblokiran serupa lainnya di await / async, ini akan memblokir semua aktivitas di thread …


5
Apakah metode statis yang tidak disinkronkan thread aman jika mereka tidak mengubah variabel kelas statis?
Saya bertanya-tanya apakah Anda memiliki metode statis yang tidak disinkronkan, tetapi tidak mengubah variabel statis apakah aman? Bagaimana jika metode ini membuat variabel lokal di dalamnya? Misalnya, apakah kode berikut ini aman untuk digunakan? public static String[] makeStringArray( String a, String b ){ return new String[]{ a, b }; } …


11
Menunggu daftar Masa Depan
Saya memiliki metode yang mengembalikan masa Listdepan List&lt;Future&lt;O&gt;&gt; futures = getFutures(); Sekarang saya ingin menunggu sampai semua futures selesai diproses dengan sukses atau salah satu tugas yang outputnya dikembalikan oleh pelemparan masa depan. Bahkan jika satu tugas melempar pengecualian, tidak ada gunanya menunggu untuk masa depan lainnya. Pendekatan yang sederhana …

26
Mencoba membaca atau menulis memori yang dilindungi. Ini sering merupakan indikasi bahwa memori lain rusak
Saya berharap seseorang dapat memberi tahu saya apa yang mungkin menyebabkan kesalahan ini: Mencoba membaca atau menulis memori yang dilindungi. Ini sering merupakan indikasi bahwa memori lain rusak. Saya benar-benar tidak dapat memposting kode karena kesalahan ini tampaknya dilemparkan ke area acak aplikasi. Aplikasi akan berjalan di mana saja 12-48 …

3
Parallel.ForEach () vs. foreach (IEnumerable <T> .AsParallel ())
Erg, saya mencoba menemukan dua metode ini di BCL menggunakan Reflector, tetapi tidak dapat menemukannya. Apa perbedaan antara kedua cuplikan ini? SEBUAH: IEnumerable&lt;string&gt; items = ... Parallel.ForEach(items, item =&gt; { ... }); B: IEnumerable&lt;string&gt; items = ... foreach (var item in items.AsParallel()) { ... } Apakah ada konsekuensi yang berbeda …

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.