MC_FLUSH
El verbo MC_FLUSH envía el contenido del búfer de envío de la unidad lógica local (LU) al lu asociado y al programa de transacciones (TP). Si el búfer de envío está vacío, no se realiza ninguna acción.
En la estructura siguiente se describe el bloque de control de verbos (VCB) usado por el verbo MC_FLUSH .
Sintaxis
struct mc_flush {
unsigned short opcode;
unsigned char opext;
unsigned char reserv2;
unsigned short primary_rc;
unsigned long secondary_rc;
unsigned char tp_id[8];
unsigned long conv_id;
};
Miembros
opcode
Parámetro proporcionado. Especifica el código de operación de verbo, AP_M_FLUSH.
opext
Parámetro proporcionado. Especifica la extensión de la operación de verbo, AP_MAPPED_CONVERSATION.
reserv2
Campo reservado.
primary_rc
Parámetro devuelto. Especifica el código de retorno principal que establece APPC al finalizar el verbo. Los códigos de retorno válidos varían en función del verbo APPC que se emita. Consulte la sección de códigos de retorno para obtener los códigos de error válidos para este verbo.
secondary_rc
Parámetro devuelto. Especifica el código de retorno secundario que establece APPC al finalizar el verbo. Los códigos de retorno válidos varían en función del verbo APPC que se emita. Consulte la sección de códigos de retorno para obtener los códigos de error válidos para este verbo.
tp_id
Parámetro proporcionado. Identifica el TP local. El valor de este parámetro lo devuelve TP_STARTED en el TP invocado o por RECEIVE_ALLOCATE en el TP invocado.
conv_id
Parámetro proporcionado. Proporciona el identificador de conversación. El valor de este parámetro lo devuelve MC_ALLOCATE en el TP invocado o por RECEIVE_ALLOCATE en el TP invocado.
Códigos de retorno
AP_OK
Código de retorno principal; el verbo se ha ejecutado correctamente.
AP_PARAMETER_CHECK
Código de retorno principal; el verbo no se ha ejecutado debido a un error en un parámetro.
AP_BAD_CONV_ID
Código de retorno secundario; el valor de conv_id no coincidía con un identificador de conversación asignado por APPC.
AP_BAD_TP_ID
Código de retorno secundario; el valor de tp_id no coincidía con un identificador de TP asignado por APPC.
AP_STATE_CHECK
Código de retorno principal; el verbo no se ejecutó porque se emitió en un estado no válido.
AP_FLUSH_NOT_SEND_STATE
Código de retorno secundario; la conversación no estaba en estado SEND.
AP_COMM_SUBSYSTEM_ABENDED
Código de retorno principal; indica una de las condiciones siguientes:
El nodo utilizado por esta conversación encontró una anulación.
La conexión entre el TP y el nodo PU 2.1 se interrumpió (un error de LAN).
El proceso SnaBase que se ejecuta en el equipo del TP encontró una anulación.
El administrador del sistema debe examinar el registro de errores a fin de determinar el motivo de la anulación.
AP_CONVERSATION_TYPE_MIXED
Código de retorno principal; el TP ha emitido verbos de conversación básicos y asignados. Solo se puede emitir un tipo en una sola conversación.AP_INVALID_VERB_SEGMENT
Código de retorno principal; el bloque de control de verbo (VCB) se ha extendido más allá del final del segmento de datos.AP_STACK_TOO_SMALL
Código de retorno principal; el tamaño de la pila de la aplicación es demasiado pequeño para ejecutar el verbo. Aumente el tamaño de pila de la aplicación.AP_CONV_BUSY
Código de retorno principal; solo puede haber un verbo de conversación pendiente a la vez en cualquier conversación. Esto puede ocurrir si el TP local tiene varios subprocesos y más de un subproceso emite llamadas APPC con el mismo conv_id.AP_UNEXPECTED_DOS_ERROR
Código de retorno principal; el sistema operativo devolvió un error a APPC al procesar una llamada de APPC desde el TP local. El código de retorno del sistema operativo se devuelve a través de secondary_rc. Aparece en el orden de intercambio de bytes de Intel. Si el problema persiste, consulte con el administrador del sistema.
Comentarios
Los datos procesados por MC_SEND_DATA se acumulan en el búfer de envío de la LU local hasta que se produzca una de las siguientes acciones:
El TP local emite MC_FLUSH (u otro verbo que vacía el búfer de envío de la LU).
El búfer está lleno.
La solicitud generada por MC_ALLOCATE también se almacena en búfer.
La conversación debe estar en estado SEND cuando el TP emite este verbo.
No hay ningún cambio de estado.