Ver Mensaje Individual
  #8  
Antiguo 31-10-2012
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.913
Reputación: 25
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
Cita:
Empezado por Ñuño Martínez Ver Mensaje
¿Mande lo qué? No te digo que no, pero el sentido común me dicta lo contrario. Claro que en informática parece que el sentido común no suele funcionar...
La razón es que se puede apagar/desacelerar los núcleos de acuerdo a la carga. Ademas, si en vez de tener una tarea "CPU-bound" tenemos cientos de tareas "IO-Bound" y/o asincronicas la velocidad de cada CPU se puede ralentizar, ahorrando energia.

Cita:
Empezado por Ñuño Martínez Ver Mensaje
Sé que no es lugar para comentarlo, pero pero precisamente la "Programación Orientada a Objetos" es, por definición, multitarea. Es decir, la encapsulación dicta que no importa la implementación interna, que los objetos son completamente independientes entre sí y que se comunican mediante mensajes. Claro que, por lo que sé, sólo hay un lenguaje que lo implementa así: Small-Talk (de hecho, es el único lenguaje orientado a objetos que conozco ). Aunque creo que algunas implementaciones de Objective C también lo hacen así.
Lo de pasar datos mediante mensajes ayuda, pero dudo que Small-Talk tenga un diseño que ayude en estos casos. Las clases en OO tienden a ser capsulas de estado. En el momento que tenemos un objeto "State-Full" en vez de uno "State-less" las posibilidades de paralelizar se van al piso.

En general, la OO tienden a generar diseños en donde es dificil/imposible paralelizar. Me gustaria ver como se evita eso, ya que igual estoy full en lenguajes OO y de los funcionales solo se una pizca (realmente, es todo un shock manejar ese estilo: No me veo haciendo las apps que hago ahora de forma funcional).
__________________
El malabarista.
Responder Con Cita