Preguntas etiquetadas con multithreading

El subprocesamiento múltiple es la capacidad de una computadora o un programa para realizar el trabajo de manera simultánea o asincrónica mediante el uso de múltiples flujos de ejecución concurrentes (generalmente conocidos como subprocesos).




10
Invoke o BeginInvoke no se pueden llamar en un control hasta que se haya creado el identificador de ventana
Tengo un método de extensión SafeInvoke Control similar al que Greg D analiza aquí (menos la verificación IsHandleCreated). Lo estoy llamando de la System.Windows.Forms.Formsiguiente manera: public void Show(string text) { label.SafeInvoke(()=>label.Text = text); this.Show(); this.Refresh(); } A veces (esta llamada puede provenir de una variedad de hilos) esto da como …

15
'usar' declaración vs 'intentar finalmente'
Tengo un montón de propiedades en las que voy a usar bloqueos de lectura / escritura. Puedo implementarlos con una try finallyo una usingcláusula. En el try finallyI adquiriría el bloqueo antes del try, y lo liberaría en el finally. En la usingcláusula, crearía una clase que adquiere el bloqueo …



2
En ArrayBlockingQueue, ¿por qué copiar el campo de miembro final en la variable final local?
En ArrayBlockingQueue, todos los métodos que requieren el bloqueo lo copian en una finalvariable local antes de llamar lock(). public boolean offer(E e) { if (e == null) throw new NullPointerException(); final ReentrantLock lock = this.lock; lock.lock(); try { if (count == items.length) return false; else { insert(e); return true; …




8
Se detectó un error de ContextSwitchDeadlock en C #
Estoy ejecutando una aplicación C # y durante el tiempo de ejecución obtengo el siguiente error: El CLR no ha podido realizar la transición del contexto COM 0x20e480 al contexto COM 0x20e5f0 durante 60 segundos. Es muy probable que el hilo que posee el contexto / apartamento de destino esté …


1
ThreadPool.QueueUserWorkItem frente a Task.Factory.StartNew
cuál es la diferencia entre los siguientes ThreadPool.QueueUserWorkItem vs Task.Factory.StartNew Si el código anterior se llama 500 veces para alguna tarea de larga ejecución, ¿significa que se ocuparán todos los subprocesos del grupo de subprocesos? ¿O será TPL (segunda opción) lo suficientemente inteligente como para tomar subprocesos menores o iguales …

4
¿Por qué Thread no es una clase abstracta y start () no es final?
¿Por qué la Threadclase se implementó como una clase regular y no como una clase abstracta con un run()método abstracto? ¿Posiblemente introducirá algún problema? ¿O tiene alguna utilidad en ser así? Además, Thread.start()se supone que el método es un método muy específico cuya funcionalidad no puede ser implementada por ninguna …

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.