Este é o aplicativo Linux denominado JavaMutex, cuja versão mais recente pode ser baixada como JavaMutex-2017-04-09a.zip. Ele pode ser executado online no provedor de hospedagem gratuita OnWorks para estações de trabalho.
Baixe e execute online este aplicativo chamado JavaMutex com OnWorks gratuitamente.
Siga estas instruções para executar este aplicativo:
- 1. Baixe este aplicativo em seu PC.
- 2. Entre em nosso gerenciador de arquivos https://www.onworks.net/myfiles.php?username=XXXXX com o nome de usuário que você deseja.
- 3. Carregue este aplicativo em tal gerenciador de arquivos.
- 4. Inicie o emulador OnWorks Linux online ou Windows online ou emulador MACOS online a partir deste site.
- 5. No sistema operacional OnWorks Linux que você acabou de iniciar, acesse nosso gerenciador de arquivos https://www.onworks.net/myfiles.php?username=XXXXX com o nome de usuário que deseja.
- 6. Baixe o aplicativo, instale-o e execute-o.
JavaMutexGenericName
Ad
DESCRIÇÃO
Código aberto totalmente redistribuível Java 100% puro para exclusão mútua. Bloqueio reentrante de leitura-gravação e somente leitura, variável de condição, envoltórios atômicos para Booleano, Inteiro, Longo e Referência. Pool de células com bloqueio opcional, trocador de objetos, Intersect.Recursos
- Java 100% puro; requer suporte Java SE 8 para expressões Lambda.
- Não depende de implementações internas proprietárias da JVM ou estruturas de dados internas da JVM (ao contrário da implementação Oracle dos pacotes java.util.concurrent. *).
- Oferece suporte às instâncias java.util.concurrent.locks Lock, ReadWriteLock e Condition, leitura-gravação e somente leitura.
- Suporta java.util.concurrent.atomic AtomicBoolean, AtomicInteger, AtomicLong, AtomicReference, AtomicMarkedReference, AtomicStampedReference. Adiciona mais funcionalidade.
- Suporta java.util.concurrent Exchanger, Semaphore. Adiciona a classe ExchangerPool.
- Inclui novas interfaces e classes para exclusão mútua e processamento simultâneo.
- Novo protocolo de exclusão mútua Intersect / Pathway.
- Nova API SpinLock para atualização rápida de campos voláteis.
- Novo SpinLockOperation para operações de busca e armazenamento atômicas gerais, mantendo um SpinLock.
- Novas classes de exemplo de lista SpinLockList, SpinLockNode duplamente vinculadas para acessos SpinLockOperation.
- Novos wrappers atômicos para uso do SpinLock.
- Novos wrappers voláteis para uso de SpinLockOperation.
- SpinLockList oferece suporte a interfaces Iterable, Iterator, ListIterator.
- Novas interfaces LatchFactory, LockFactory, ReenterableLockFactory, ReenterableDualLockFactory.
- Nova interface IntersectFactory e métodos dispenser em IntersectLatch, IntersectLimited.
- Novo paradigma ConditionClosure aplicado a bloqueios e intersecções para suportar variáveis de condição.
- Nova API ReenterableLockAvailable para notificar o cliente quando o ReenterableLock for totalmente liberado.
- Adicionados CountDownLatch e CyclicBarrier, com métodos de conveniência adicionais.
- Adicionado TrafficBarrier como barreira de thread simulando uma interseção de tráfego.
- Adicionado TransferPipe para designs produtor-consumidor unilaterais.
- Adicionada a classe SynchronousQueue e as interfaces TransceivePipe, TransmitPipe, ReceivePipe (e fábricas).
- Adicionados EventToken e EventTokenSet para um encadeamento aguardar em um ou mais eventos em um ou mais encadeamentos de trabalho.
- Adicionado pacote paralelo para pools de thread de trabalho simples.
- Classe FutureWork para executar instâncias Callable.
- Inclui TestMultiServer de amostra para demonstrar servidores de thread modularizados sem deadlock usando EventTokenSet. Os servidores de amostra não têm bloqueio, mesmo ao solicitar dados de outros servidores.
- Suporte para ExecutorService, ScheduledExecutorService, CompletionService.
- Inclui solução de jantar Philosophers de amostra usando o software SpinLock API sem impasses ou fome.
- Interface ExtendedLock para invocar métodos de interface funcionais enquanto mantém o Lock.
- Adicione SpeedLock e amigos ao pacote de bloqueios. Quando o aplicativo tem um número fixo de threads, o SpeedLock oferece um desempenho muito alto para aquisição e liberação de bloqueio.
- SpeedLock é baseado em SpinLockOperation.
- SpeedLockPool é um bloqueio com um pool interno de instâncias SpeedLock. Um SpeedLockPool pode ser usado por um número ilimitado de threads para bloqueio de desempenho muito alto.
- SpeedLockDual oferece suporte a variantes de leitura e gravação e somente leitura.
- SpeedLockDualPool gerencia um pool de SpeedLockDual para acesso por um número ilimitado de Threads simultâneos.
- Classe de utilitário SpeedLocks com métodos de dispensador para os vários tipos de SpeedLock e fábricas.
Público
Desenvolvedores
Linguagem de Programação
Java
Este é um aplicativo que também pode ser obtido em https://sourceforge.net/projects/javamutex/. Ele foi hospedado no OnWorks para ser executado online da maneira mais fácil a partir de um de nossos Sistemas Operativos gratuitos.