Preguntas etiquetadas con thread-safety

Un fragmento de código es seguro para subprocesos si solo manipula las estructuras de datos de una manera que permita la ejecución consistente de este código por varios subprocesos. Un código puede ser seguro para subprocesos, condicionalmente seguro (se requiere exclusión mutua) o inseguro (solo puede ser utilizado de forma segura por un subproceso).

3
Threadsafe vs reentrante
Recientemente, hice una pregunta, con el título "¿Es seguro el hilo de malloc?" , y dentro de eso pregunté, "¿Malloc es reentrante?" Tenía la impresión de que todos los reentrantes son seguros para subprocesos. ¿Es incorrecta esta suposición?



4
Seguridad del uso Thread.current [] en rieles
Sigo recibiendo opiniones contradictorias sobre la práctica de almacenar información en el Thread.currenthash (por ejemplo, el actual_usuario, el subdominio actual, etc.). La técnica se ha propuesto como una forma de simplificar el procesamiento posterior dentro de la capa del modelo (alcance de consultas, auditoría, etc.). ¿Por qué mis variables de …


14
Android: la mejor y más segura forma de detener el hilo
Quiero saber cuál es la mejor manera de detener un hilo en Android. Sé que puedo usarlo AsyncTasken su lugar y que hay un cancel()método. Tengo que usar Threads en mi situación. Así es como lo estoy usando Thread: Runnable runnable = new Runnable() { @Override public void run() { …

3
El programa de subprocesos múltiples se atascó en modo optimizado pero se ejecuta normalmente en -O0
Escribí un simple programa multiproceso de la siguiente manera: 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; } Se comporta normalmente en modo de depuración en Visual …



2
¿La iteración sobre una matriz con un bucle for es una operación segura para subprocesos en C #? ¿Qué hay de iterar un IEnumerable <T> con un bucle foreach?
Según mi entendimiento, dada una matriz C #, el acto de iterar sobre la matriz simultáneamente desde múltiples subprocesos es una operación segura para subprocesos. Al iterar sobre la matriz, me refiero a leer todas las posiciones dentro de la matriz mediante un bucle antiguo simplefor . Cada subproceso simplemente …

2
Código asincrónico, variables compartidas, subprocesos de grupo de subprocesos y seguridad de subprocesos
Cuando escribo código asincrónico con async / await, generalmente ConfigureAwait(false)para evitar capturar el contexto, mi código salta de un subproceso de grupo de subprocesos al siguiente después de cada uno await. Esto plantea preocupaciones sobre la seguridad del hilo. ¿Es seguro este código? static async Task Main() { int count …
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.