Ir al contenido principal

Partiendo con IronPython & mediendo de forma elegante los tiempos.

Hace tiempo que me quiero meter a python, pero no he tenido mucho tiempo. hace un tiempo Paul Beltran encontró la forma de medir de forma un poco mas elegante que restar las fechas que normalmente seria de la siguiente forma.

IronPython

from System import DateTime
from System import TimeSpan
ini = DateTime.Now
for x in range(10):
print x

print "En hacer un for se demoro-->" + str (DateTime.Now - ini )


csharp

var ini = DateTime.Now;
for (var i =0; i<10; i++)
Console.WriteLine(i);
Console.WriteLine("En hacer un for se demoro " + (DateTime.Now - ini));


pero hay un de hacer eso un poco mas elegante, que restando los datetime. usando System.Diagnostics.Stopwatch
de la siguiente forma

IronPython

from System import Diagnostics
timer = Diagnostics.Stopwatch.StartNew()
for x in range(10):
print x

timer.Stop()
print "En hacer un for se demoro-->" + str (timer.Elapsed )


el Resultado en la Consola es el siguiente:

>>> from System import Diagnostics
>>> timer = Diagnostics.Stopwatch.StartNew()
>>> for x in range(10):
... print x
...
0
1
2
3
4
5
6
7
8
9
>>> timer.Stop()
>>> print "En hacer un for se demoro-->" + str (timer.Elapsed )
En hacer un for se demoro-->00:00:00.0240301


en csharp

var timer = System.Diagnostics .Stopwatch.StartNew();
for (var i =0; i<10; i++)
Console.WriteLine(i);
timer.Stop();
Console.WriteLine("En hacer un for se demoro " + (timer.Elapsed));


Stopwatch tiene metodos stop, start, reset, para gestionar de cuando queremos de que el tiempo corra.


si bien aqui los ejemplos son bien básicos, solo un for, el uso mas común creo yo es saber cuanto se demora un método, un webservice, o por que no una consulta sql.



--
Atte.
Victor Hugo Saavedra
http://vhspiceros.blogspot.com

Comentarios

Entradas populares de este blog

buscar columnas en todas las tablas Sql Server

me vi en la necesidad de buscar en todas las tablas de una base de datos por un comodin ya que no conocia bien el modelo de la base de datos.
aqui les dejo el sql.
SELECT sysobjects.name AS table_name, syscolumns.name AS column_name, systypes.name AS datatype, syscolumns.LENGTH AS LENGTH FROM sysobjects INNER JOIN syscolumns ON sysobjects.id = syscolumns.id INNER JOIN systypes ON syscolumns.xtype = systypes.xtype WHERE (sysobjects.xtype = 'U') and (UPPER(syscolumns.name) like upper('%myFieldName%')) ORDER BY sysobjects.name, syscolumns.colid


Solo tienen que cambiar donde dice "myFieldName"por el nombre de la columna que desean buscar.

--
Atte.
Victor Hugo Saavedra
http://vhspiceros.blogspot.com

"is not null" o "<> Null" en Sql Server

Trabajando con NHinbernate. mapeando unas clases, guardaba unos datos y hacia esta consulta para ver si estaba bien:


select * from table where campo <> NULL;


pero no me arrojaba los datos que queria y luego darle y darle vueltas hice esta consulta.

select * from table where campo is not NULL;


y ahi me di cuenta que el mapeo de Hibernet, y los cambios que habia hecho estaban bien. perdi toda una mañana de trabajo por esto :(.


Asi no es lo mismo "is not null" o "<> Null", por lo menos en Sql Server

Entonces ahora cada vez que quiera preguntar si un capo no es Null, voy a preguntar por "IS NOT NULL".

En caso de que quiera saber si un campo es null "IS NULL".




--
Atte.
Victor Hugo Saavedra
http://vhspiceros.blogspot.com

Aplicación y Aplicativo

Cada dia es mas comun escuchar de aplicativo para referirse a un programa informatico,  esto puede sonar bastante cool, pero la verdad es que no lo es. El termino "aplicativo"  no existe en informatica, la palabra correcta para referirse a un programa informatica es "Aplicacion".

Las definiciones segun la real academedia española son;


Aplicación (informatica): Programa preparado para una utilización específica, como el pago de nóminas, formación de un banco de términos léxicos, etc.Aplicativo: Que sirve para aplicar algo.
y ustedes van a seguir usando aplicativo en vez de aplicación
Links:
http://buscon.rae.es/draeI/SrvltConsulta?TIPO_BUS=3&LEMA=aplicativo http://buscon.rae.es/draeI/SrvltConsulta?TIPO_BUS=3&LEMA=aplicaci%F3n


--
Atte.
Victor Hugo Saavedra
http://vhspiceros.blogspot.com