IsSynchronous (arcpy)

摘要

确定工具是同步运行还是异步运行。当工具为同步运行时,会自动返回结果,但在完成同步之前不能执行任何其他操作。所有非服务器工具都是同步运行的。服务器工具可以是异步运行的,即向服务器提交某个工具后,无需等待即可使用其他功能,但必须向服务器明确请求结果。

语法

IsSynchronous (tool_name)
参数说明数据类型
tool_name

The name of the tool to determine if it is synchronous.

String
返回值
数据类型说明
Boolean

返回布尔值 True,表示工具是同步运行。

代码实例

IsSynchronous 示例

确定某服务器工具是否同步运行。

import arcpy
import time

# Add server toolbox from a local ArcGIS for Server
#
arcpy.ImportToolbox("pondermatic;buffertools")

# Create and load a recordset object for the tool's input
#
recSet = arcpy.RecordSet()
recSet.load("c:/temp/lines.shp")

# Run the server tool
#
results = arcpy.BufferLines_mytools(recSet, "100")

# If the tool is asynchronous, wait until the task is finished (status = 4)
#
if not arcpy.IsSynchronous("BufferLines"):
    while results.status < 4:
        time.sleep(0.01)

# Get output from task and export to a feature class on disk
#
result = results.getOutput(0)
result.save("c:/temp/bufferlines.shp")

相关主题

9/15/2013