| Casa | Hardware | Redes | Programación | software | Criticar | Sistemas |   
software  
  • Adobe Illustrator

  • Software de Animación

  • Antivirus Software

  • Software Audio

  • Copia de seguridad de datos

  • Grabar CDs

  • Grabar DVDs

  • compresión de datos

  • Software de base de datos

  • edición

  • desktop Video

  • Software de vídeo digital

  • Drupal

  • Software Educativo

  • Ingeniería del Software

  • Tipos de extensiones de archivos

  • Software financiero

  • Freeware , Shareware y Abandonware

  • GIMP

  • Graphics Software

  • Software Home Recording

  • Microsoft Access

  • Microsoft Excel

  • Microsoft Publisher

  • Microsoft Word

  • Código abierto

  • Otro Software Informática

  • Juegos de PC

  • Photoshop

  • Formato de Documento Portátil

  • PowerPoint

  • Software para presentaciones

  • Software de Productividad

  • Quicktime

  • Gestión de Escritorio remoto

  • SQL Server

  • Skype

  • Software versiones beta

  • Consultores de Software

  • Las compañías de desarrollo de software

  • Licencias de software

  • Hojas de cálculo

  • Impuestos-Preparación de Software

  • Software de utilidades

  • Web Clip Art

  • Windows Media Player

  • Software de Procesamiento de Texto
  •  
    Conocimientos Informáticos >> software >> Software de utilidades >> Content
    Cómo codificar un ejecutivo cíclico en Java
    Un ejecutivo cíclico proporciona una alternativa a escribir un sistema operativo en toda regla , en tiempo real. Consiste en un bucle infinito que contiene conjuntos de acciones . Cada conjunto está precedido por un período de espera que controla cuando el conjunto es para llevar a cabo sus acciones . El siguiente código muestra un ejemplo : while ( true) { //espera 3 secondswait ( 3000) ;//recepción de un mensaje de red ....... //esperar 2 segundos para que la recepción completa de la messagewait ( 2000 ) ;//escanear el contenido del mensaje ....... } Estos conjuntos de acciones a menudo se pueden ejecutar simultáneamente con algún grado de sincronización. En Java, las discusiones son un mecanismo para ejecutar tareas simultáneas utilizando pausas para ayudar en la sincronización. Instrucciones
    identificar las tareas

    1 Seleccione un patrón de diseño que más se acerque a los requisitos de comportamiento de la aplicación que se construirá como un ejecutivo cíclico. Asegúrese de que el patrón de diseño cubre el contenido del bucle que forman el ejecutivo cíclico.
    2

    Par los comportamientos del patrón de diseño con los requisitos de la aplicación . Asegúrese de que cada uno de los procesos cooperativos , sincronizados se asocia con cada uno de los comportamientos descritos en la solicitud.
    3

    Identificar los detalles específicos de Java que componen cada una de las clases de hilo de proceso de la aplicación . Asegúrese de establecer una pausa de sincronización para cada clase Thread proceso para asegurar el tiempo adecuado entre los procesos y evitar condiciones anómalas como las carreras . Crear clases de apoyo para actuar como amortiguadores de intercambio de datos entre procesos , tales como colas , según sea necesario . Crear una clase de secuencia de registro para definir registros de seguimiento de la ejecución de cada hilo de proceso.
    Organizar el paquete
    4

    Construir un ejecutivo de clase principal cíclica que crea instancias de la clase Thread proceso , clases especiales de apoyo y cualquier otra inicialización requerida , tales como las siguientes :
    clase

    CyclicExec { void (String [] args ) public static {//inicializar necesitan recursos .......... ........................... //define un registro hilo classLogStream ls = new LogStream (); ......... ............................ //inicializar las clases de apoyo ................. .................... MsgQueue sq = new MsgQueue (.... ) ; .................. ................... //inicializa las clases de hilo de proceso ......................... ............ //instancia del proceso Process_1 y definir su asociado threadProcess_1 p1 = new Process_1 ( ......) ; T_Process_1 = new thread ;/( p1 ) /activar el tema por Process_1try { T_Process_1.start (); } catch ( IllegalThreadStateException e) { //Entrar un mal comienzo de la rosca y salida .......................... ........... } } }
    5

    Agregar al paquete de cada una de las clases de hilo de proceso, como muestra el siguiente ejemplo :
    clase

    Process_1 extiende thread {//initializationpublic Process_1 (.... ) {//establecer un registro de este hilo ( P_S es objeto de secuencia de registro predefinido ) PrintStream p1_s = p_s.make_it ( Processs_1_Log_File ) ;//inicializar el subproceso de proceso .. ................................... } .............. ....................... //ejecución - impulsado por el método start () implícito utilizado en el vacío classpublic principal run () {//core loopwhile ( true) {//proceso básico ..................................... //pausa después de ejecutar una ciclo del processtry core { sleep ( Process_1_Wait ) ; } catch ( InterruptedException e) { //iniciar una excepción pausa .......................... ............. } } } }
    6

    construir las clases de apoyo que definen buffers de mensajes entre hilos de proceso con sus métodos de acceso de amortiguamiento calificados como sincronizada , ya que la siguiente muestra en el ejemplo : public


    sincronizado Pushit byte (byte ITM) { ................................ ............................. }
    7

    Crear una clase especial que define los archivos de registro de rastreo el comportamiento de las clases de hilo de proceso, tales como :
    clase

    LogStream { private boolean LogState ;//clase initializerpublic LogStream (String LogStateIn ) { this.LogState = false; if ( LogStateIn.equals ("sí" ) ) this.LogState = true ;} //crear una secuencia de registro a un filepublic PrintStream make_it (String LogLocation ) { PrintStream this1 ; cadena decisión2 ; if ( this.LogState ) { decisión2 = new String ( LogLocation ) ;} else { decisión2 = new String (" /dev /null ") ;} try { this1 = new PrintStream ( nueva FileOutputStream ( decisión2, true) ) ; } catch ( Exception e ) { this1 = null; } return this1 ;} }

    probar y entregar
    8

    Definir una serie de escenarios de prueba para cubrir las condiciones de operación tanto extremas y normal con el fin de afinar la sincronización entre los subprocesos del proceso .
    9

    opinión el hilo proceso sesión para asegurarse de que las clases de hilo de proceso funcionan como se esperaba. Asegúrese de que no hubo carreras o condiciones similares.
    10

    Preparar el paquete de distribución de aplicaciones mediante la inclusión de los archivos de clase ( ejecutable) para cada uno de los hilos de proceso , la clase principal , clases de apoyo de mensajería y secuencia de registro clase. Incluir scripts que descargar y configurar los archivos de clase , así como inicializar el directorio donde los archivos de registro de hilo de proceso se ubicarán .

    Previous :

    next :
      Artículos relacionados
    ·Cómo hacer un Partition Magic Boot CD 
    ·¿Cómo descomprimir archivos Winrar 
    ·Cómo restringir el Regedit en un dominio de usuario 
    ·Cómo configurar FTP en 1 & 1 en Coda 
    ·Cómo copiar software desde una computadora a un CD 
    ·Opciones AcroRd32.exe 
    ·Cómo crear un folleto con Adobe Acrobat 6.0 
    ·Cómo combinar 2 particiones con Partition Magic 
    ·Cómo utilizar los Diagnósticos de discos Seatools a C…
    ·Cómo desinstalar Escritorio Sweeper 
      Artículos destacados
    ·Cómo restaurar un registro de archivo de copia de segu…
    ·Cómo hacer un visualizador con Microsoft Powerpoint 
    ·Herramientas de Windows XP para la limpieza de mi disco…
    ·Cómo eliminar una página en blanco en WordPerfect 
    ·Cómo obtener texto parpadeante en Stardoll 
    ·Cómo optimizar las imágenes para PowerPoint 
    ·Tutoriales para archivos Zip 
    ·Cómo PowerPoint es útil para presentaciones 
    ·Cómo hacer que el efecto de imagen en Photoshop 
    ·Cómo utilizar el comando de Linux para descomprimir un…
    Copyright © Conocimientos Informáticos http://ordenador.wingwit.com