Gambas文档
编译和安装
错误消息
代码片段
翻译
废弃的组件
教程
开发环境文档
开发文档
名词解释
如何操作
说明
维基手册
维基搜索
维基许可协议
文档
应用程序仓库
语言概览
语言索引
主题
组件
gb
.Array.Bounds
.Stat.Perm
Application
Args
Array
Boolean[]
Byte[]
Class
Classes
Collection
Component
Components
Date[]
Enum
Env
Error
File
Float[]
gb
Integer[]
Jit
Long[]
Object
Object[]
Observer
Param
Pointer[]
Process
Short[]
Single[]
Stat
Stream
String
String[]
System
Task
Timer
User
Variant[]
gb.args
gb.cairo
gb.chart
gb.clipper
gb.complex
gb.compress
gb.crypt
gb.data
gb.db
gb.db.form
gb.db.mysql
gb.db.odbc
gb.db.postgresql
gb.db.sqlite2
gb.db.sqlite3
gb.dbus
gb.dbus.trayicon
gb.debug
gb.desktop
gb.desktop.x11
gb.eval
gb.eval.highlight
gb.form
gb.form.dialog
gb.form.editor
gb.form.htmlview
gb.form.mdi
gb.form.print
gb.form.terminal
gb.gmp
gb.gsl
gb.gtk
gb.gtk3
gb.gtk3.opengl
gb.gtk3.webview
gb.gui
gb.gui.qt
gb.gui.qt.ext
gb.gui.trayicon
gb.gui.webview
gb.hash
gb.highlight
gb.image
gb.image.effect
gb.image.io
gb.inotify
gb.logging
gb.map
gb.media
gb.media.form
gb.mime
gb.mysql
gb.ncurses
gb.net
gb.net.curl
gb.net.pop3
gb.net.smtp
gb.opengl
gb.opengl.glsl
gb.opengl.glu
gb.opengl.sge
gb.openssl
gb.option
gb.pcre
gb.pdf
gb.poppler
gb.qt4
gb.qt4.ext
gb.qt4.opengl
gb.qt4.webkit
gb.qt4.webview
gb.qt5
gb.qt5.ext
gb.qt5.opengl
gb.qt5.webview
gb.qt6
gb.qt6.ext
gb.qt6.opengl
gb.qt6.webview
gb.report
gb.report2
gb.sdl
gb.sdl2
gb.sdl2.audio
gb.settings
gb.signal
gb.term
gb.test
gb.util
gb.util.web
gb.v4l
gb.vb
gb.web
gb.web.feed
gb.web.form
gb.web.gui
gb.xml
gb.xml.html
gb.xml.rpc
gb.xml.xslt
最近的修改

Task (gb)

自从 3.3

该虚类是所有后台任务的父类。

该类不可创建。

属性
Handle  
Running  
Value  

方法
Kill  
Stop  
Wait  

事件
Error  
Kill  
Read  

它是如何工作的?

要在后台运行任务,请执行以下操作:

  • 您必须创建一个继承Task的类。

  • 该类必须有一个不接受参数的公共“Main”方法。

  • 必须初始化类才能启动新任务。

  • 然后,Main方法将在事件循环的下一次调用时自动在后台运行。

Main 方法由fork运行。它可以访问程序的其他部分,除了父进程看不到任务所做的任何更改。

许多组件都不喜被创建进程。尤其是GUI。所以要小心。

向任务发送参数

要向任务发送参数,只需在其中定义一些公共变量并填充它们,在任务开始之前。

接收任务的结果

Main 方法可以通过一个序列化/反序列化的内部进程,将发送到父进程的值返回。

该值可以是您可以与WRITE指令一起使用的任何值。

父进程只需读取Value属性即可获得该返回值。

任务标准输出

任务标准输出(PRINT指令)和错误输出(ERROR指令)是自动重定向的,父进程通过ReadError事件获取它们。

任务错误

如果在任务执行过程中发生了不好的事情,父进程可以通过读取Value属性,因为错误将引发事件。错误消息将有望解释问题。

任务优先级

要降低任务的优先级,请使用Priority(/comp/gb/Application/priority)属性。