×

the requested url could not be retrieved s not

ERROR The requested URL could not be retrieved?用JS怎么做旋转相册

admin admin 发表于2022-04-30 09:00:37 浏览154 评论0

抢沙发发表评论

ERROR The requested URL could not be retrieved

补充:当尝试取回该 URL 时遇到下面的错误: 缓存服务器的管理员 webmaster. 已由 yd_88_208 (squid/3.1.16) 生成 Thu, 22 Aug 2013 04:03:16 GMT

用JS怎么做旋转相册

下面是用css旋转图片,用js换className。

换图片地址后试试。

《!doctype html》《html》《head》《style》.css-turn-0{    -moz-transform:matrix(1,0,0,1,0,0);    -o-transform:matrix(1,0,0,1,0,0);    -webkit-transform:matrix(1,0,0,1,0,0);    transform:matrix(1,0,0,1,0,0);    -ms-filter:“progid:DXImageTransform.Microsoft.Matrix(M11=1, M12=0, M21=0, M22=1, SizingMethod=’auto expand’)“}.css-turn-270{    -moz-transform:matrix(0,-1,1,0,0,0);    -o-transform:matrix(0,-1,1,0,0,0);    -webkit-transform:matrix(0,-1,1,0,0,0);    transform:matrix(0,-1,1,0,0,0);    -ms-filter:“progid:DXImageTransform.Microsoft.Matrix(M11=0, M12=1, M21=-1, M22=0, SizingMethod=’auto expand’)“}.css-turn-180{    -moz-transform:matrix(-1,0,0,-1,0,0);    -o-transform:matrix(-1,0,0,-1,0,0);    -webkit-transform:matrix(-1,0,0,-1,0,0);    transform:matrix(-1,0,0,-1,0,0);    -ms-filter:“progid:DXImageTransform.Microsoft.Matrix(M11=-1, M12=0, M21=0, M22=-1, SizingMethod=’auto expand’)“}.css-turn-90{    -moz-transform:matrix(0,1,-1,0,0,0);    -o-transform:matrix(0,1,-1,0,0,0);    -webkit-transform:matrix(0,1,-1,0,0,0);    transform:matrix(0,1,-1,0,0,0);    -ms-filter:“progid:DXImageTransform.Microsoft.Matrix(M11=0, M12=-1, M21=1, M22=0, SizingMethod=’auto expand’)“}《/style》《/head》《body》《img src=“图片地址“》《script》    var img = document.getElementsByTagName(’img’),        i = 1,        css = [’css-turn-0’, ’css-turn-90’, ’css-turn-180’, ’css-turn-270’];    img.onclick = function () {        this.className = css[i++ % 4];    }《/script》《/body》《/html》

linux进程间通信问题 我想用共享内存的方式实现信号量控制一个不许并行的的函数 请问下面我的代码合理吗

看你好像完全搞混了。。。什么叫用共享内存的方式实现信号量控制不能并行的代码?首先共享内存和信号量都可以实现进程间通信,但是他们的作用或者说使用的方向是有明显的区别的:1:共享内存是创建一块内存区域,多个进程可以同时访问该区域,一般用于进程间数据传输,效率比较明显。2:信号量则完全不同,信号量主要是用来控制临界资源的访问,也就是你说的不能并行的函数/代码。3:说一下实现,共享内存直接用API就可以了,信号量一般会进行封装,类似于对链表的操作进行一些简单的函数封装一样,下面给出信号量的使用实例代码,可以参考:sem_ctl.c文件内容:int init_sem(int sem_id,int init_value){ union semun sem_union; sem_union.val = init_value; if(semctl(sem_id,0,SETVAL,sem_union) == -1) { perror(“semctl“); return -1; } return 0;}int del_sem(int sem_id){ union semun sem_union; if(semctl(sem_id,0,IPC_RMID,sem_union) == -1) { perror(“delete semaphore“); return -1; } return 0;}int sem_p(int sem_id){ struct sembuf sem_b; sem_b.sem_num = 0; sem_b.sem_op = -1; sem_b.sem_flg = SEM_UNDO; if(semop(sem_id,&sem_b,1) ==-1) { perror(“P operation“); return -1; } return 0;}int sem_v(int sem_id){ struct sembuf sem_b; sem_b.sem_num = 0; sem_b.sem_op = 1; sem_b.sem_flg = SEM_UNDO; if(semop(sem_id,&sem_b,1) == -1) { perror(“V opration“); return -1; } return 0;}sem_ctl.h文件内容:#include 《stdio.h》#include 《stdlib.h》#include 《string.h》#include 《fcntl.h》#include 《sys/types.h》#include 《sys/ipc.h》#include 《sys/sem.h》#define MAX 128int count; //全局变量,即临界资源union semun{ int val; struct semid_ds *buf; unsigned short *array; struct seminfo *__buf;};int init_sem(int sem_id,int init_value);int del_sem(int sem_id);int sem_p(int sem_id);int sem_v(int sem_id);在应用程序中只要包含sem_ctl.h就可以使用信号量的p、v操作了,下面给出2个c程序同时操作该信号量的情况,类似于:server.c文件内容如下:#include “util.h“#include 《signal.h》int semid;void sighandler(int signo){ del_sem(semid); exit(0);}void server(){ key_t key; initcount(); if((key = ftok(“.“,’e’)) == -1) { perror(“ftok“); exit(1); } if((semid = semget(key,1,0666|IPC_CREAT|IPC_EXCL)) == -1) { perror(“semget“); exit(1); } printf(“the semid is :%d\n“,semid); init_sem(semid, 0); signal(SIGINT,sighandler); signal(SIGUSR1,sighandler); signal(SIGALRM,sighandler); while(1) { sem_p(semid); /* do something */ printf(“count =%d\n“,count++); sem_v(semid); sleep(2); }}int main(void){ server();}client.c文件内容如下:#include “sem_ctl.h“void custom(){ int semid; key_t key; if((key = ftok(“.“,’e’)) == -1) { perror(“ftok“); exit(1); } if((semid = semget(key,0,0)) == -1) { perror(“semget“); exit(1); } printf(“the semid is :%d\n“,semid); while(1) { sem_p(semid); //获得信号量,同一时间只有一个进程能获得该信号量 /* do something */ printf(“count =%d\n“,count++); sem_v(semid); //释放信号量 sleep(2); }}int main(void){ custom();}编译好,运行的时候先运行server再运行client。