Propósito
Criar uma entrada de memória compartilhada.
Sintaxe
SHMCRT (<exp.N1>, <exp.N2>)
Argumentos
|
<exp.N1> |
representa a chave para memória criada. |
|
<exp.N2> |
representa o tamanho para esta memória em bytes. |
Utilização
Permite a criação de uma área de memória para ser compartilhada entre processos (programas). Esta função retorna verdade (.T.), quando a memória é criada com sucesso. Caso contrário, retorna falso (.F.) e um valor numérico (errno), através da função DBERR(). Este valor pode ser verificado no arquivo "/usr/include/errno.h".
O número de memórias compartilhadas coexistentes é limitado pelo sistema operacional.
Nunca use chave igual a 123, pois esta chave é usada internamente pelo OpenBASE para criar sua própria entrada de memória compartilhada.
Exemplo
O exemplo a seguir mostra-nos como utilizar esta função.
PROG
var_cad = space(100)
IF ! SHMCRT (111,100)
? "Nao criou memória"
IF DBERR() = 12
? "Sem Memória Suficiente"
ENDIF
ENDIF