Programação Concorrente/Paralela em Java
|
|
|
- Kátia Ramalho Neto
- 10 Há anos
- Visualizações:
Transcrição
1 em Java Resolução do Exercício 1 public class Cont extends Thread { protected int ct; public Cont() { ct=0; public synchronized void inc() { ct++; public void run() { for (int i=0; i<100; i++) { inc(); System.out.print(" i= " + ct); public static void main(string[] arg) { System.out.print("\nSequencial"); new Cont().run(); new Cont().run(); System.out.print("\nParalelo"); new Cont().start(); new Cont().run(); Resolução do Exercício 2 public class MyClock extends Thread { public MyClock() { start(); public void run() { for(int i=0; i<10; i++) { sleep(1000); catch (InterruptedException e) { System.out.println(i + " segundos"); System.out.println("terminou"); public static void main(string[] arg) { new MyClock(); // durante 10 segundos Arquitecturas Paralelas I 13 João Luís Sobral 2002
2 Resolução do Exercício 3 // Versão do contador com indicação de falha public class CannotIncException extends Exception { public class CannotDecException extends Exception { public class Cont1 { private int ct; public void Cont1() { ct=0; public void inc() throws CannotIncException { if (ct==100) throw new CannotIncException(); else ct++; public void dec() throws CannotDecException { if (ct==0) throw new CannotDecException(); else ct--; // Versão com métodos guardados com base no estado físico public class Cont2 { private int ct; public void Cont2() { ct=0; public synchronized void inc() { while (ct>=100) { wait(); // suspende até ser acordado por um dec catch(interruptedexception e) { ct++; if (ct==1) notifyall(); // para acordar os que suspenderam em dec public synchronized void dec() { while (ct<=0) { wait(); catch(interruptedexception e) { ct--; if (ct==99) notifyall(); Arquitecturas Paralelas I 14 João Luís Sobral 2002
3 Resolução do Exercício 3 (continuação) // Versão com métodos guardados com base no estado lógico public class Cont3 { private int ct; private String estado; public void Cont3() { ct=0; estado = "min"; public synchronized void inc() { while (estado=="max") { wait(); // suspende até ser acordado por um dec catch(interruptedexception e) { if (estado=="min") { notifyall(); estado="med"; ct++; if (ct==100) estado="max"; public synchronized void dec() { while (estado=="min") { wait(); catch(interruptedexception e) { if (estado=="max") { notifyall(); estado="med"; ct--; if (ct==0) estado="min"; Arquitecturas Paralelas I 15 João Luís Sobral 2002
4 Resolução do Exercício 4 // Counter.java public interface Counter extends Remote { void count() throws RemoteException; // CounterServer.java import java.rmi.*; import java.rmi.server.*; public class CounterServer extends RemoteObject implements Counter { public void count() throws RemoteException { for(int i=0; i<100; i++) System.out.print(i + " "); // CounterServerApp.java import javax.naming.*; import javax.rmi.portableremoteobject; public class CounterServerApp { public static void main(string args[]) { CounterServer cs1 = new CounterServer(); PortableRemoteObject.exportObject(cs1); CounterServer cs2 = new CounterServer(); PortableRemoteObject.exportObject(cs2); Context ctx = new InitialContext(); ctx.rebind("counterserver1",cs1); ctx.rebind("counterserver2",cs2); BufferedReader rdr = new BufferedReader(new InputStreamReader(System.in)); while (true) { System.out.println("Type EXIT to shutdown the server"); if ("EXIT".equals(rdr.readLine())) { break; ctx.unbind("counterserver1"); ctx.unbind("counterserver2"); PortableRemoteObject.unexportObject(cs1); PortableRemoteObject.unexportObject(cs2); catch(exception e) { e.printstacktrace(); Arquitecturas Paralelas I 16 João Luís Sobral 2002
5 Resolução do Exercício 4 (continuação) // AssCounter.java public class AssCounter extends Thread { Counter mycount; public AssCounter(Counter c) { mycount =c; public void run() { mycount.count(); catch(exception ex) { ex.printstacktrace(); // CounterClient.java import javax.naming.*; import java.util.*; public class CounterClient { public static Counter findcounter(string cnt, Context ctx) { Counter cs=null; cs = (Counter) PortableRemoteObject.narrow( ctx.lookup(cnt), Counter.class); catch(exception ex) { ex.printstacktrace(); return(cs); public static void main(string args[]) { Context ctx = new InitialContext(); Counter cs1 = findcounter("counterserver1",ctx); Counter cs2 = findcounter("counterserver2",ctx); // Execução sequencial cs1.count(); cs2.count(); // Execução em paralelo (new AssCounter(cs1)).start(); cs2.count(); catch(exception ex) { ex.printstacktrace(); Arquitecturas Paralelas I 17 João Luís Sobral 2002
6 Resolução do Exercício 5. São alteradas as classes AssCounter e CounterClient e é adicionado a interface Callback: // Callback.java public interface Callback { void callop(); // AssCounter.java public class AssCounter extends Thread { Counter mycount; Callback myclient; public AssCounter(Counter c, Callback cl) { mycount =c; myclient = cl; public void run() { mycount.count(); catch(exception ex) { ex.printstacktrace(); myclient.callop(); // CounterClient.java public class CounterClient implements Callback { public void execute() { Context ctx = new InitialContext(); Counter cs1 = findcounter("counterserver1",ctx); Counter cs2 = findcounter("counterserver2",ctx); // Execução em paralelo new AssCounter(cs1,this).start(); new AssCounter(cs2,this).start(); catch(exception ex) { ex.printstacktrace(); public void callop() { System.out.println("Done"); public static void main(string args[]) { new CounterClient().execute(); Arquitecturas Paralelas I 18 João Luís Sobral 2002
7 Resolução do Exercício 6 // Counter.cs using System; using System.Runtime.Remoting.Messaging; public abstract class Counter: MarshalByRefObject { public abstract void count(); // CounterServer.cs using System; using System.Runtime.Remoting; using System.Runtime.Remoting.Channels.Http; using System.Runtime.Remoting.Channels; using System.Runtime.Remoting.Messaging; using System.Threading; class CounterServer : Counter { public override void count() { for(int i=0; i<100; i++) { Console.Write(i + " "); Thread.Sleep(50); Console.WriteLine(); class ServerStartup { static void Main(string[] args) { Console.WriteLine ("ServerStartup.Main(): Server started"); HttpChannel chnl = new HttpChannel(1234); ChannelServices.RegisterChannel(chnl); RemotingConfiguration.RegisterWellKnownServiceType( typeof(counterserver), "CounterServer.soap", WellKnownObjectMode.Singleton); // the server will keep running until keypress. Console.ReadLine(); Arquitecturas Paralelas I 19 João Luís Sobral 2002
8 Resolução do Exercício 6 (continuação) // CounterClient.cs using System; using System.Runtime.Remoting; using System.Runtime.Remoting.Channels.Http; using System.Runtime.Remoting.Channels.Tcp; using System.Runtime.Remoting.Channels; using System.Runtime.Remoting.Proxies; class CounterClient { delegate void CounterDelegate(); static void Main(string[] args) { HttpChannel channel = new HttpChannel(); ChannelServices.RegisterChannel(channel); Counter obj = (Counter) Activator.GetObject( typeof(counter), " Console.WriteLine("Client.Main(): Reference to rem.obj. acquired"); // execução sequencial obj.count(); obj.count(); // execução em paralelo CounterDelegate cdel1 = new CounterDelegate(obj.count); IAsyncResult svasy1 = cdel1.begininvoke(null,null); Console.WriteLine("Client.Main(): Invocation1 done"); CounterDelegate cdel2 = new CounterDelegate(obj.count); IAsyncResult svasy2 = cdel2.begininvoke(null,null); Console.WriteLine("Client.Main(): Invocation2 done"); cdel1.endinvoke(svasy1); Console.WriteLine("EndInvoke1 returned successfully "); catch (Exception e) { Console.WriteLine("EXCEPTION during EndInvoke1"); cdel2.endinvoke(svasy2); Console.WriteLine("EndInvoke2 returned successfully"); catch (Exception e) { Console.WriteLine("EXCEPTION during EndInvoke2"); // wait for keypress Console.ReadLine(); Arquitecturas Paralelas I 20 João Luís Sobral 2002
Middleware de Aplicações Paralelas/Distribuídas
Computação Paralela Middleware de Aplicações Paralelas/Distribuídas João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Outubro 2005 Principais aspectos a gerir pelo Middleware
Computação Paralela. Uma framework para aplicações concorrentes João Luís Ferreira Sobral Departamento do Informática Universidade do Minho
Computação Paralela Uma framework para aplicações concorrentes João Luís Ferreira Sobral Departamento do Informática Universidade do Minho Dezembro 2005 Fases de desenvolvimento de aplicações paralelas
Analisar os sistemas operacionais apresentados na figura e responder as questões abaixo: Identificar
Projeto Integrador Sistemas Operacionais Prof.ª Lucilia Ribeiro GTI 3 Noturno Grupo: Anderson Alves da Mota. André Luiz Silva. Misael bezerra dos santos. Sandro de almeida silva. Analisar os sistemas operacionais
THREADS EM JAVA. George Gomes Cabral
THREADS EM JAVA George Gomes Cabral THREADS Fluxo seqüencial de controle dentro de um processo. Suporte a múltiplas linhas de execução permite que múltiplos processamentos ocorram em "paralelo" (em computadores
A ) O cliente terá que implementar uma interface remota. . Definir a interface remota com os métodos que poderão ser acedidos remotamente
Java RMI - Remote Method Invocation Callbacks Folha 9-1 Vimos, na folha prática anterior, um exemplo muito simples de uma aplicação cliente/ servidor em que o cliente acede à referência remota de um objecto
Threads e Concorrência em Java (Material de Apoio)
Introdução Threads e Concorrência em Java (Material de Apoio) Professor Lau Cheuk Lung http//www.inf.ufsc.br/~lau.lung INE-CTC-UFSC A maioria dos programas são escritos de modo seqüencial com um ponto
Multithreading. Programação Orientada por Objectos com Java. Ademar Aguiar. MRSC - Programação em Comunicações
Programação Orientada por Objectos com Java www.fe.up.pt/~aaguiar [email protected] 1 Multithreading 154 Objectivos Ser capaz de: Explicar os conceitos básicos de multithreading Criar threads múltiplos
Sintaxe Geral Tipos de Dados. Prof. Angelo Augusto Frozza, M.Sc.
Sintaxe Geral Tipos de Dados Comentários Comentários: De linha: // comentário 1 // comentário 2 De bloco: /* linha 1 linha 2 linha n */ De documentação: /** linha1 * linha2 */ Programa Exemplo: ExemploComentario.java
Programação Orientada a Objetos em Java. Threads Threads Threads. Threads
Universidade Federal do Amazonas Departamento de Ciência da Computação IEC481 Projeto de Programas Programação Orientada a Objetos em Java Threads Threads Threads Threads Professor: César Melo Slides baseados
insfcanceof new public switch transient while byte continue extends for int null
Palavras -chave de JAV A abstract catch do final implements long private static throw void boolean char double finally import native protected super throws volatile break class float insfcanceof new public
Threads e Sockets em Java. Threads em Java. Programas e Processos
Threads em Java Programas e Processos Um programa é um conceito estático, isto é, um programa é um arquivo em disco que contém um código executável por uma CPU. Quando este programa é executado dizemos
Objetos Distribuídos. Nazareno Andrade
Objetos Distribuídos Nazareno Andrade O Problema Orientação a objetos é um paradigma poderoso Modularidade, extensibilidade, manutenibilidade Porque distribuir os objetos: Localidade dos objetos Tolerância
Programação Concorrente em Java. Profa Andréa Schwertner Charão DLSC/CT/UFSM
Programação Concorrente em Java Profa Andréa Schwertner Charão DLSC/CT/UFSM O que é programação concorrente? Um programa, múltiplos fluxos de execução Quando usar programação concorrente? Desempenho Ex.:
Java Threads. Introdução
Java Threads [email protected] 1 Introdução O único mecanismo de concorrência suportado explicitamente pela linguagem Java é multi-threading. threading. Os mecanismos de gerenciamento e sicronização
Num sistema de objectos distribuídos, dois conceitos são fundamentais.
Folha 10-1 Java RMI - Remote Method Invocation No modelo de programação orientada a objectos, vimos que um programa consiste numa colecção de objectos que comunicam entre si através da invocação dos seus
Invocação de Métodos Remotos RMI (Remote Method Invocation)
Invocação de Métodos Remotos RMI (Remote Method Invocation) Programação com Objetos Distribuídos Um sistema de objetos distribuídos permite a operação com objetos remotos A partir de uma aplicação cliente
Sistemas Paralelos e Distribuídos - 2003/2004 Curso: Matemática /Informática Sistemas Distribuídos - 2003/2004 Curso: Ensino da Informática
Java RMI - Remote Method Invocation Folha 5-1 No modelo de programação orientada a objectos, vimos que um programa consiste numa colecção de objectos que comunicam entre si através da invocação dos seus
(Aula 17) Threads em Java
(Aula 17) Threads em Java Difícil As Threads thread threads de emjava classificar sãogerenciadaspelajvm. podemser com user criadasdas thread ou kernel Profa. Patrícia A seguintesmaneiras: Fazendo extend
MIDDLEWARE Aplicativos RMI, RPC e eventos Camadas Protocolo Requesição-Respostal Middleware Representação Externa dos Dados Sistemas Operacionais
RMI JAVA MIDDLEWARE Aplicativos RMI, RPC e eventos Protocolo Requesição-Respostal Camadas Middleware Representação Externa dos Dados Sistemas Operacionais RMI REMOTE METHOD INVOCATION Invocação remota
SISTEMAS DISTRIBUÍDOS
SISTEMAS DISTRIBUÍDOS CUP Disk Memoey CUP Memoey Disk Network CUP Memoey Disk Remote Method Invocation (RMI) Introdução Solução JAVA para Objetos Distribuídos Um objeto existe em uma máquina É possível
Universidade da Beira Interior. Sistemas Distribuídos
Folha 6-1 Sincronização de Threads A sincronização de Threads em Java é baseada no conceito do Monitor (de Hoare). Cada objecto Java tem associado um monitor (ou lock ) que pode ser activado se a palavra
Threads. O que é uma Thread? Paralelismo
Threads em Java 1 O que é uma Thread? Paralelismo Threads Multi- threading é o mecanismo de concorrência suportado explicitamente pela linguagem Java. Os mecanismos de gerenciamento e sincronização de
Aula 30 - Sockets em Java
Aula 30 - Sockets em Java Sockets Sockets são estruturas que permitem que funções de software se interconectem. O conceito é o mesmo de um soquete (elétrico, telefônico, etc...), que serve para interconectar
Sistemas Distribuídos
Sistemas Distribuídos LICENCIATURA EM COMPUTAÇÃO Prof. Adriano Avelar Site: www.adrianoavelar.com Email: [email protected] Relembrando... Mecanismos de Comunicação Middleware Cenário em uma rede Local
Fundamentos de Programaçã. ção Concorrente
Java 2 Standard Edition Fundamentos de Programaçã ção Concorrente Helder da Rocha www.argonavis.com.br 1 Programação concorrente O objetivo deste módulo é oferecer uma introdução a Threads que permita
Aula 09 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/
Aula 09 Introdução à Java Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/ Agenda da Aula Java: Sintaxe; Tipos de Dados; Variáveis; Impressão de Dados.
Programação de Computadores - I. Profª Beatriz Profº Israel
Programação de Computadores - I Profª Beatriz Profº Israel As 52 Palavras Reservadas O que são palavras reservadas São palavras que já existem na linguagem Java, e tem sua função já definida. NÃO podem
Java Básico. Matrícula de Alunos. Marco Antonio, Arquiteto de Software TJDF [email protected]. Novembro/2005
Java Básico Matrícula de Alunos Marco Antonio, Arquiteto de Software TJDF [email protected] Novembro/2005 Objetivos OO: trocar mensagens entre os objetos Exception: tratar exceções Análise: implementar
JDBC Tópicos avançados de acesso a base de dados relacional
JDBC Tópicos avançados de acesso a base de dados relacional A gestão de instruções SQL em JDBC 1 : proposta de uma arquitectura para evitar a manipulação de código SQL embutido em código JAVA. A arquitectura
Invocação Remota MC704
Invocação Remota MC704 Aplicações distribuídas Aplicação distribuída: conjunto de processos que cooperam entre si para prover um serviço ou realizar uma computação normalmente processos precisam invocar
Java : Comunicação Cliente-Servidor.
Java : Comunicação Cliente-Servidor. Objetivo: Capacitar o aluno a desenvolver uma aplicação servidora para múltiplos clientes. Apresentar as classes Socket e ServerSocket, classes de fluxo de dados, a
Exemplo com SWING 1: Fazer uma aplicação, em Java, que tenha, na tela, uma JProgressBar, um JLabel e um JButton.
Exemplo com SWING 1: Fazer uma aplicação, em Java, que tenha, na tela, uma JProgressBar, um JLabel e um JButton. A aplicação deve ter duas Threads. A primeira, fará com que a JProgressBar incremente, num
Prova de Java. 1) Copie o programa abaixo no eclipse e complete-o, utilizando os conceitos aprendidos durante o curso. (4 pontos)
Prova de Java 1) Copie o programa abaixo no eclipse e complete-o, utilizando os conceitos aprendidos durante o curso. (4 pontos) O programa consiste em uma aplicação que simula o comportamento de dois
A Linguagem Java. Alberto Costa Neto DComp - UFS
A Linguagem Java Alberto Costa Neto DComp - UFS 1 Roteiro Comentários Variáveis Tipos Primitivos de Dados Casting Comandos de Entrada e Saída Operadores Constantes 2 Comentários /** Classe para impressão
Uma Introdução à Arquitetura CORBA. O Object Request Broker (ORB)
Uma Introdução à Arquitetura Francisco C. R. Reverbel 1 Copyright 1998-2006 Francisco Reverbel O Object Request Broker (ORB) Via de comunicação entre objetos (object bus), na arquitetura do OMG Definido
Aula 2. Objetivos. Encapsulamento na linguagem Java; Utilizando a referência this.
Aula 2 Objetivos Encapsulamento na linguagem Java; Utilizando a referência this. Encapsulamento, data hiding é um conceito bastante importante em orientação a objetos. É utilizado para restringir o acesso
Múltiplas Linhas de Execução Java (Threads)
Múltiplas Linhas de Execução Java (Threads) SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic [email protected] Instituto de Ciências Matemáticas
Especialização em desenvolvimento para web com interfaces ricas. Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares
Especialização em desenvolvimento para web com interfaces ricas Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares Objetivos Conceito de exceções Tratar exceções pelo uso de try, catch e
Tutorial RMI (Remote Method Invocation) por Alabê Duarte
Tutorial RMI (Remote Method Invocation) por Alabê Duarte Este tutorial explica basicamente como se implementa a API chamada RMI (Remote Method Invocation). O RMI nada mais é que a Invocação de Métodos
Como foi exposto anteriormente, os processos podem ter mais de um fluxo de execução. Cada fluxo de execução é chamado de thread.
5 THREADS Como foi exposto anteriormente, os processos podem ter mais de um fluxo de execução. Cada fluxo de execução é chamado de thread. 5.1 VISÃO GERAL Uma definição mais abrangente para threads é considerá-lo
Programação Concorrente em java - Exercícios Práticos Abril 2004
Programação Concorrente em java - Exercícios Práticos Abril 2004 1. Introdução As threads correspondem a linhas de controlo independentes no âmbito de um mesmo processo. No caso da linguagem JAVA, é precisamente
Java 2 Standard Edition. Fundamentos de. Objetos Remotos. Helder da Rocha www.argonavis.com.br
Java 2 Standard Edition Fundamentos de Objetos Remotos Helder da Rocha www.argonavis.com.br 1 Sobre este módulo Este módulo tem como objetivo dar uma visão geral, porém prática, da criação e uso de objetos
Java RMI. Alcides Calsavara
Java RMI Alcides Calsavara Objetivos Permitir que um método de uma classe Java em execução em uma máquina virtual JVM chame um método de um objeto (instância de uma classe Java) situado em outra máquina
Curso Adonai QUESTÕES Disciplina Linguagem JAVA
1) Qual será o valor da string c, caso o programa rode com a seguinte linha de comando? > java Teste um dois tres public class Teste { public static void main(string[] args) { String a = args[0]; String
UNIVERSIDADE FEDERAL DO PARANÁ
CURSO: Ciência da Computação DATA: / / 2013 PERÍODO: 4 o. PROFESSOR: Andrey DISCIPLINA: Técnicas Alternativas de Programação AULA: 03 APRESENTAÇÃO: Hoje vamos conhecer o comando switch, o bloco try catch;
Equivale a um conjunto de if 's encadeados, porém mais estruturado.
Switch (Case) Equivale a um conjunto de if 's encadeados, porém mais estruturado. switch(expressao_ordinal) ordinal_1: bloco1; ordinal_2: bloco2; default: diretiva_default; Exemplo - switch public class
APÊNDICE A EXEMPLO DE APLICAÇÃO
APÊNDICE A EXEMPLO DE APLICAÇÃO Para ilustrar os três métodos de distribuição de objetos apresentados nesta dissertação iremos, a seguir, mostrar um exemplo de implementação de uma aplicação. São apresentadas
Invocação de Métodos Remotos
Invocação de Métodos Remotos Java RMI (Remote Method Invocation) Tópicos Tecnologia RMI Introdução Modelo de camadas do RMI Arquitetura Fluxo de operação do RMI Passos para implementação Estudo de caso
Java Spaces Exemplos
Java Spaces Exemplos Programação com Objetos Distribuídos (C. Geyer) Java Spaces - Exemplos V0 1 Autoria! Autores! Local " Cláudio Geyer " Instituto de Informática " UFRGS " disciplina: Programação com
Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery
Linguagem de Programação JAVA Técnico em Informática Professora Michelle Nery Agenda Regras paravariáveis Identificadores Válidos Convenção de Nomenclatura Palavras-chaves em Java Tipos de Variáveis em
Módulo 5 - JDBC java.sql - Conexão com Banco de Dados
Aplicações de Linguagem de Programação Orientada a Objetos 2ºsem/2012 (Professor: Tiago) Módulo 5 - JDBC java.sql - Conexão com Banco de Dados Fazer o download do drive de conexão com o BD: http://jdbc.postgresql.org/download.html
Paradigmas da Programação PPROG. Linguagem JAVA. Interfaces. (Livro Big Java, Late Objects Capítulo 9) Nelson Freire (ISEP DEI-PPROG 2013/14) 1/33
PPROG Paradigmas da Programação Linguagem JAVA Interfaces (Livro Big Java, Late Objects Capítulo 9) Nelson Freire (ISEP DEI-PPROG 2013/14) 1/33 PPROG Motivação para usar Interfaces Definição de Interface
Chamadas Remotas de Procedimentos (RPC) O Conceito de Procedimentos. RPC: Programa Distribuído. RPC: Modelo de Execução
Chamadas Remotas de Chamada Remota de Procedimento (RPC) ou Chamada de Função ou Chamada de Subrotina Método de transferência de controle de parte de um processo para outra parte Procedimentos => permite
Exemplo Threads com Swing:
Exemplo Threads com Swing: Fazer uma aplicação Java com 2 JLabel, com um ponto final, em formatação Negrito, tamanho 70 e um JButton. A aplicação deve conter 2 Threads e um método. O método deve fazer
Programação concorrente em Java
Programação concorrente em Java Paulo Sérgio Almeida Grupo de Sistemas Distribuídos Departamento de Informática Universidade do Minho 2007/2008 c 2000 2007 Paulo Sérgio Almeida Programação concorrente
Enterprise Java Beans
Enterprise Java Beans Prof. Pasteur Ottoni de Miranda Junior DCC PUC Minas Disponível em www.pasteurjr.blogspot.com 1-O que é um Enterprise Java Bean? O Entertprise Java Bean (EJB) é um componente server-side
Universidade Federal da Paraíba
Universidade Federal da Paraíba Mestrado em Informática Fora de Sede Universidade Tiradentes Aracaju - Sergipe Disciplina Sistemas Operacionais Professor Jacques Philippe Sauvé Aluno José Maria Rodrigues
CONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS. João Gabriel Ganem Barbosa
CONCEITOS DE LINGUAGEM DE PROGRAMAÇÃO CARACTERÍSTICAS João Gabriel Ganem Barbosa Sumário Motivação História Linha do Tempo Divisão Conceitos Paradigmas Geração Tipos de Dados Operadores Estruturada vs
Invocação de Métodos em Objectos Remotos
Invocação de Métodos em Objectos Remotos Invocações de métodos remotas e locais A remote invocation B local C invocation local E invocation local invocation D remote invocation F Page 1 1 Invocação de
Só podem ser executados por uma Thread que detenha o lock do objecto
Transferência de controle entre Threads Os métodos wait(), notify() notifyall(), da classe Object, Permitem a transferência de controlo de uma Thread para outra. Só podem ser executados por uma Thread
Construção de novas Classes em Java. Classes Atributos Métodos Herança...
Construção de novas Classes em Java Classes Atributos Métodos Herança... 1 Exemplo Representação em UML Java (Unified Modeling Language) Stack items : Vector Stack( ) push( ) pop( ) isempty( ) finalize(
Mecanismo de Threads em Java 2
Mecanismo de Threads em Java 2 Índice MULTITHREADING : Múltiplos processos. 3 Paulo Costa, n.º 1000334 Mecanismo de Threads Página 2 de 20 MULTITHREADING : Múltiplos Processos As Threads são convenientes
Objetos Distribuídos - Programação Distribuída Orientado a Objetos. Luiz Affonso Guedes
Objetos Distribuídos - Programação Distribuída Orientado a Objetos Luiz Affonso Guedes Introdução Conceitos básicos programação distribuída + programação orientada a objetos = Objetos distribuídos Motivação
UNIVERSIDADE. Sistemas Distribuídos
UNIVERSIDADE Sistemas Distribuídos Ciência da Computação Prof. Jesus José de Oliveira neto Aula 17-18: Middleware: Implementação de RMI (cont.), RPC, Modelo de Eventos, Exemplo com Java RMI Chamadas dinâmicas
Programação Concorrente com Thread Java. Luiz Affonso Guedes Sistemas Distribuidos
Programação Concorrente com Thread Java Luiz Affonso Guedes Sistemas Distribuidos Definições Básicas Threads são sub-procesos no sistema operacional. É menos custoso gerenciar threads do que processos.
Java. Marcio de Carvalho Victorino www.dominandoti.eng.br
Java Marcio de Carvalho Victorino www.dominandoti.eng.br 3. Considere as instruções Java abaixo: int cont1 = 3; int cont2 = 2; int cont3 = 1; cont1 += cont3++; cont1 -= --cont2; cont3 = cont2++; Após a
INF01018 Aula Prática 2 RMI Remote Method Invocation
1 / 18 INF01018 Aula Prática 2 RMI Remote Method Invocation Lucas Mello Schnorr, Alexandre Silva Caríssimi {lmschnorr,asc}@inf.ufrgs.br http://www.inf.ufrgs.br/ lmschnorr/ad/ INF01018 Sistemas Operacionais
BC1518-Sistemas Operacionais. Prof. Marcelo Z. do Nascimento [email protected]
BC1518-Sistemas Operacionais Sincronização de Processos (aula 5 Parte 2) Prof. Marcelo Z. do Nascimento [email protected] Roteiro Semáforos Monitores Passagem de Mensagem Exemplos em S.O.
Tutorial de Uso com o Java
Tutorial de Uso com o Java Criado por Fernando Anselmo Versão 1.0 em 18/08/2012 Seção 1 Nesta seção veremos: Histórico do MongoDB Como instalar o MongoDB Console de Comandos Usar o Java MongoDB (de "humongous
Licenciatura em Engenharia Informática PROVA DE TESTE PRÁTICO Sistemas Distribuídos I 2º Semestre, 2005/2006
Departamento de Informática Faculdade de Ciências e Tecnologia UNIVERSIDADE NOVA DE LISBOA Licenciatura em Engenharia Informática PROVA DE TESTE PRÁTICO Sistemas Distribuídos I 2º Semestre, 2005/2006 NOTAS:
Num sistema de objectos distribuídos, dois conceitos são fundamentais.
Folha 9-1 Java RMI - Remote Method Invocation No modelo de programação orientada a objectos, vimos que um programa consiste numa colecção de objectos que comunicam entre si através da invocação dos seus
Acesso a Banco. Conexão em Java. Conexão em Java. Programação Orientada a Objetos Profa. Cristiane e Prof. Daniel
Acesso a Banco Programação Orientada a Objetos Profa. Cristiane e Prof. Daniel As conexões em Java são feitas através de uma ponte que implementa todas as funcionalidades que um banco de dados padrão deve
Bacharelado em Ciência e Tecnologia BC-0505 - Processamento da Informação Teoria Arquivos Prof. Edson Pinheiro Pimentel [email protected].
Bacharelado em Ciência e Tecnologia BC-0505 - Processamento da Informação Teoria Arquivos Prof. Edson Pinheiro Pimentel [email protected] Conceitos Arquivos permitem armazenar dados de maneira
Análise de Programação
Análise de Programação Conceitos Avançados da Linguagem de Programação Java Prof Gilberto B Oliveira Encapsulamento Proteger o dado dentro de uma classe (capsula segura) Facilita o uso da classe por outros
Java Básico. Classes Abstratas, Exceções e Interfaces Prof. Fernando Vanini Ic-Unicamp
Java Básico Classes Abstratas, Exceções e Interfaces Prof. Fernando Vanini Ic-Unicamp Classes Abstratas construção de uma classe abstrata construção de classes derivadas Classes e Herança Uma classe define
Tipos, Literais, Operadores
Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não
Tipos, Literais, Operadores
Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não
