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).



5
Apa sajakah opsi tautan yang benar untuk menggunakan std :: thread di GCC pada linux?
Hai, saya mencoba menggunakan std::threaddengan G ++. Ini kode tes saya #include <thread> #include <iostream> int main(int, char **){ std::thread tt([](){ std::cout<<"Thread!"<<std::endl; }); tt.join(); } Ini dikompilasi, tetapi ketika saya mencoba menjalankannya, hasilnya adalah: terminate called after throwing an instance of 'std::system_error' what(): Operation not permitted Aborted Versi kompiler saya: …

5
Memahami std :: atomic :: bandingkan_exchange_weak () di C ++ 11
bool compare_exchange_weak (T& expected, T val, ..); compare_exchange_weak()adalah salah satu primitif pertukaran-perbandingan yang disediakan dalam C ++ 11. Ini lemah dalam arti mengembalikan salah meskipun nilai objek sama dengan expected. Ini karena kegagalan palsu pada beberapa platform di mana urutan instruksi (bukan satu seperti pada x86) digunakan untuk mengimplementasikannya. Pada …



6
Apa arti monitor objek di Java? Mengapa menggunakan kata ini?
Saat membaca artikel tentang utas Java, saya sering melihat ungkapan: "utas saat ini adalah pemilik monitor objek ini". Saya mengerti artinya: utas mendapat hak untuk beroperasi pada objek. Tapi saya bingung mengapa kita menggunakan frase "monitor objek" daripada "kunci objek"? Singkatnya, saya tidak tahu arti kata 'monitor'. Pertanyaannya mungkin aneh …


6
Kinerja variabel ThreadLocal
Berapa banyak yang dibaca dari ThreadLocalvariabel lebih lambat daripada dari bidang biasa? Lebih konkretnya apakah pembuatan objek sederhana lebih cepat atau lebih lambat daripada akses ke ThreadLocalvariabel? Saya berasumsi bahwa ini cukup cepat sehingga memiliki ThreadLocal<MessageDigest>instance jauh lebih cepat daripada membuat instance MessageDigestsetiap saat. Tetapi apakah itu juga berlaku untuk …



3
Program multithreading terjebak dalam mode yang dioptimalkan tetapi berjalan secara normal di -O0
Saya menulis program multithreading sederhana sebagai berikut: static bool finished = false; int func() { size_t i = 0; while (!finished) ++i; return i; } int main() { auto result=std::async(std::launch::async, func); std::this_thread::sleep_for(std::chrono::seconds(1)); finished=true; std::cout<<"result ="<<result.get(); std::cout<<"\nmain thread id="<<std::this_thread::get_id()<<std::endl; } Ini berperilaku normal dalam mode debug di Visual studio atau -O0di …

4
Apakah utas disalin saat memanggil garpu?
Jika saya memiliki program yang berjalan dengan utas dan memanggil fork()sistem berbasis unix, apakah utas disalin? Saya tahu bahwa memori virtual untuk proses saat ini disalin 1: 1 ke proses baru yang dihasilkan. Saya tahu bahwa utas memiliki tumpukan mereka sendiri dalam memori virtual suatu proses. Jadi, setidaknya tumpukan utas …

7
Bagaimana cara membuat loader latar belakang pemblokiran di Java 8?
Pertanyaan Bagaimana Anda membuat background loader yang tepat di Java 8? Ketentuan: data harus dimuat di latar belakang setelah memuat data harus ditampilkan sementara data dimuat, tidak ada permintaan lebih lanjut harus diterima jika ada permintaan saat data dimuat, pemuatan lain harus dijadwalkan setelah batas waktu tertentu (mis. 5 detik) …

1
Apakah menelurkan utas memberikan jaminan pesanan memori sendiri?
Saya ingin melakukan kira-kira ini: Utas awal: tulis beberapa nilai ke global vars (mereka tidak akan pernah ditulis lagi) Ini bisa berupa data yang cukup besar (array, string, dll). Tidak bisa dibuat begitu saja std::atomic<>. menelurkan utas lainnya Utas lainnya: baca keadaan global lakukan pekerjaan, dll. Sekarang, saya tahu saya …

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.