informatica:programacion:go
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| informatica:programacion:go [2021/08/31 10:45] – [Goroutines] tempwin | informatica:programacion:go [2023/08/31 09:59] (actual) – [Linux manual] tempwin | ||
|---|---|---|---|
| Línea 16: | Línea 16: | ||
| * [[https:// | * [[https:// | ||
| * Compilación cruzada: poder compilar en diferentes sistemas y hacia cualquier sistema. | * Compilación cruzada: poder compilar en diferentes sistemas y hacia cualquier sistema. | ||
| + | * Manejo muy eficiente de concurrencia | ||
| Go te obliga a mantener el código limpio. Si declaras la importación de un paquete y no lo usas, Go se quejará y no compilará: | Go te obliga a mantener el código limpio. Si declaras la importación de un paquete y no lo usas, Go se quejará y no compilará: | ||
| Línea 174: | Línea 175: | ||
| </ | </ | ||
| - | Comprobamos: | + | Comprobamos |
| < | < | ||
| $ go version | $ go version | ||
| - | go version go1.15.5 linux/amd64 | + | go version go1.20.3 linux/amd64 |
| </ | </ | ||
| Línea 217: | Línea 218: | ||
| < | < | ||
| - | go version go1.17 linux/amd64 | + | go version go1.21.0 linux/amd64 |
| </ | </ | ||
| ===== Configuración ===== | ===== Configuración ===== | ||
| Línea 2268: | Línea 2269: | ||
| ===== Goroutines y channels ===== | ===== Goroutines y channels ===== | ||
| - | Las rutinas de Go son como los hilos. Los canales se comunican entre las rutinas de go. Las rutinas necesitan comunicarse para saber cuándo finalizan y saber si deben detenerse o continuar. | + | Mucha de la programación que se hace es secuencial. |
| + | |||
| + | Los canales se comunican entre las rutinas de go. Las rutinas necesitan comunicarse para saber cuándo finalizan y saber si deben detenerse o continuar. | ||
| Un ejemplo de uso sería una rutina para leer varios ficheros. En lugar de abrir uno, leer todo el contenido, cerrar el fichero y proceder con el siguiente, se puede hacer todo esto al mismo tiempo. Los canales pueden avisar cuándo se ha terminado de leer todos los ficheros. | Un ejemplo de uso sería una rutina para leer varios ficheros. En lugar de abrir uno, leer todo el contenido, cerrar el fichero y proceder con el siguiente, se puede hacer todo esto al mismo tiempo. Los canales pueden avisar cuándo se ha terminado de leer todos los ficheros. | ||
| Línea 2430: | Línea 2433: | ||
| * [[https:// | * [[https:// | ||
| * [[https:// | * [[https:// | ||
| + | * [[https:// | ||
| * [[https:// | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| * [[https:// | * [[https:// | ||
| * [[https:// | * [[https:// | ||
| Línea 2436: | Línea 2442: | ||
| * https:// | * https:// | ||
| * [[https:// | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[http:// | ||
| + | * [[https:// | ||
informatica/programacion/go.1630399506.txt.gz · Última modificación: por tempwin
