Ir ao conteúdo
  • Cadastre-se

Desenvolver um projetinho em java


Posts recomendados

ola a todos eu estou com sérios problemas num projeto em Java que necessita usar sockets para conectar e threads.....
Vamos lá eu preciso criar um servidor que tem o compartilhamento de um arquivo texto que permita a leitura e a escrita deste arquivo com as seguintes regras:
- ao receber uma solicitação, o servidor deverá criar uma thread para atende-la
- vários leitores podem acessar ao mesmo tempo o arquivo.
- se um escritor acessar o arquivo ninguém mais pode acessá-lo. Enquanto houver leitura o servidor enfileirará os escritores e, havendo novos leitores, eles devem ser enfileirados depois do escritor.
- se houver solicitações enquanto o arquivo estiver sendo escrito elas devem respeitar uma fila (FIFO).

 

bom ate agora eu tenho isso aqui, de um grande parça, alguém pode me ajudar como devo prosseguir com o mais algo???

 

import java.io.*;

import java.net.ServerSocket;
import java.net.Socket;
 
public class Servidor implements Runnable {
 
    private DataInputStream in;
    private DataOutputStream out;
    private ServerSocket server;
    private Socket cliente;
        
   
    private volatile boolean stopped = false;
 
    @Override
    public void run() {
        try {
            //Cria servidor
            server = new ServerSocket(8080);
            System.out.println("Servidor Criado.");
            while(!stopped){
                if (server != null) {
                    cliente = server.accept();
                    new Thread(new ListenerSocket(cliente)).start();            
                }
            }
        } catch (IOException ex){
            System.out.println("Erro: " + ex.getMessage());
        }
    }
 
    private class ListenerSocket implements Runnable {
       
        public ListenerSocket(Socket cliente) {
            try {
                in = new DataInputStream(cliente.getInputStream());
                System.out.println("IP: " + cliente.getInetAddress().getHostAddress() + " conectou-se!");
 
                System.out.println("Aguardando");
                String acao = in.readUTF();
 
                //Chama Método
                //acaoRequerida(acao);
 
            } catch (IOException ex){
                System.out.println("Erro: " + ex.getMessage());
            }
        }  
 
        @Override
        public void run() {
            //throw new UnsupportedOperationException("Not supported yet.");
            //To change body of generated methods, choose Tools | Templates.
        }        
       
    }
 
}

 

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...