Compartiendo para dos mundos

Hablando de programación paralela.
Tutoriales en: https://www.youtube.com/user/jambrizgdl
Twitter: @dogoteacher

Buscar este blog

miércoles, 23 de diciembre de 2009

Diferencia entre c# y JAVA en los hilos.

Para JAVA hay dos métodos para programar hilos en una clase. Uno de ellos es heredar de la clase Thread [1]. Esta es otra diferencia de C# con JAVA, el primero permite a una clase heredar de JAVA.

Por ejemplo dado este código.

using System;
using System.Threading;

namespace codigosEjemplov2
{

public class ejemplo1 :Thread
{

public static void calculaPares(object nombre)
{
int cont=0;
System.Console.WriteLine("iniciando: {0}", ((mensaje) nombre).msg );
for(int i=1; i<=500000; cont+=(i%2 ==0?1:0), i+=1 );
System.Console.WriteLine("pares {0} ", cont);
}

public static void Main()
{
ejemplo1 obj1= new ejemplo1(ejemplo1.calculaPares);
obj1.Start( );
}
}
}


Al compilar esta clase ejemplo1 se muestra el siguiente mensaje de error:


C:\temp>csc codigosEjemplov2.cs


Compilador de Microsoft (R) Visual C# 2008, versión 3.5.30729.1
para Microsoft (R) .NET Framework, versión 3.5
(C) Microsoft Corporation. Reservados todos los derechos.

codigosEjemplov2.cs(7,15): error CS0509: 'codigosEjemplov2.ejemplo1': no puede
derivar del tipo sealed 'System.Threading.Thread'
c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\mscorlib.dll: (Ubicación del
símbolo relacionado con el error anterior)



La definición de la clase Thread como de tipo Sealed se dio en la ayuda de las referencias [1] en el siguiente párrafo.



[ComVisibleAttribute(true)]
[ClassInterfaceAttribute(ClassInterfaceType.None)]
public sealed class Thread : CriticalFinalizerObject,
_Thread



Referencia
[1] Class Thread. Sun. enlace 1

[2] MSDN Library, No declarar miembros protegidos en tipos sealed.
enlace 2

No hay comentarios:

Publicar un comentario

Are you ready?