关于客户端与服务端接收线程的问题
在接收线程中,其流程是否如下?
刚开始
服务器端接收线程不断等待数据进入输入流 (刚开始无数据)
客户端通过输出流写入数据后 (IO流中有数据)
服务器能够从输入流中读到数据
读取完一次后 继续不停重读读取
但是IO流只能被完整读取一次,所以虽然IO流有数据但是不能被读取
Socket的通道端依然阻塞?
停止继续等待数据写入这个IO流,然后从原来的IO流往后继续读取
所以虽然是一个循环读取的过程,但是对这个IO流来说是不断往下读取数据的过程这个么个意思吗?
junit在哪里讲解的呢,没有找到视频?
之所以使用数据流作为socket的数据传输,是因为数据流类继承FilterInputStream和FilterOutputStream。
其read和writer方法是阻塞式,这个是不是有必要说明下,不然后面socket实现群聊时,将发送和读取分开,然后死不断循环真的有点让人不太能理解。
老师,eclipse中的窗口大小和位置的单位是什么?
以下方法为例,该方法中参数的单位是什么?
public void setSize(int width, int height) { super.setSize(width, height); }
我按着视频敲的代码,画出窗口感觉很大?
tomcat启动后使用tomcat7:shutdown关闭,再次启动还是提示端口被占用,端口怎么关闭呢?
在vscode中编译完成显示两字符串是同id的,这是解释器优化的问题还是由于保存编辑的优化呢?
老师,这是双色球资料包中老师给的代码:
Scanner类的nextInt(int n)方法中的形参代表的是进制,不是范围吧,红框出,给出的33、16貌似是当作范围了
只能是父子关系才能向上或向下转型吗?
package cn.lz.Server; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.UnsupportedEncodingException; import java.net.ServerSocket; import java.net.Socket; public class Server { public static void main(String[] args) { //创建服务器 ServerSocket server = null; //监听客户端 Socket client = null; //获取输入信息 BufferedReader br = null; try { server = new ServerSocket(8888); client = server.accept(); br = new BufferedReader(new InputStreamReader(client.getInputStream(),"utf-8")); String str=null; while((str=br.readLine()).length()>0) { System.out.println(str); } } catch (UnsupportedEncodingException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { CloseUtil.CloseAll(br,client,server); } } }
按照视频敲代码,浏览器输入http://localhost/index.html,我的server怎么啥的不显示输出啊?
有几个字节是指的是可容纳数据的长度吗
请问有API文档吗?
能不能把 xxx 正在观看这个去掉阿 好影响
老师,为什么在程序运行后,能够正常运行,但总是出现异常呢?我根据老师的源码检查了多次,没有发现哪里有问题啊?
package cn.sxt.game; import java.awt.Color; import java.awt.Font; import java.awt.Frame; import java.awt.Graphics; import java.awt.Image; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import javax.swing.JFrame; /** * 容器和数组产生多发炮弹 * @author Administrator * */ public class MyGameFrame extends Frame{ Image planeImg = GameUtil.getImage("images/plane.png"); Image bg = GameUtil.getImage("images/bg.jpg"); //创建飞机的对象,并调用Plane Plane plane = new Plane(planeImg,250,250); //创建炮弹的对象,并调用Shell Shell[] shells = new Shell[50]; @Override public void paint(Graphics g) {//自动被调用。g变量相当于画笔 g.drawImage(bg, 0, 0, null); plane.drawSelf(g);//画飞机 //画50个炮弹 for(int i = 0;i<shells.length;i++) { shells[i].draw(g); //飞机和炮弹的碰撞检测 boolean peng = shells[i].getRect().intersects(plane.getRect()); if(peng) { plane.live = false; } } } //定义一个内部类并继承线程 class PaintThread extends Thread{ @Override public void run() { while(true) { repaint();//重画窗口 try { Thread.sleep(40);//1秒等于1000毫秒 } catch (InterruptedException e) { e.printStackTrace(); } } } } //定义键盘监听的内部类,并继承KeyAdapter class KeyMonitor extends KeyAdapter{ @Override //按一下键,会获得那些信息 public void keyPressed(KeyEvent e) { plane.addDirection(e);//调用Plane中的按下方法 } @Override //释放按键,会获得哪些信息 public void keyReleased(KeyEvent e) { plane.minusDirection(e); } } /** * 初始化窗口 */ public void launchFrame() { this.setTitle("2D经典");//窗口名称 this.setVisible(true); this.setSize(Constant.GAME_WIDTH, Constant.GAME_HEIGHT);//设置窗口大小 this.setLocation(300, 300);//设置窗口位置 //定义窗口关闭程序 this.addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { System.exit(0);//表示直接关闭 } }); new PaintThread().start();//启动重化窗口的线程 addKeyListener(new KeyMonitor());//给窗口增加键盘的监听 //初始化50个炮弹 for(int i = 0;i<shells.length;i++) { shells[i] = new Shell(); } } public static void main(String[] args) { MyGameFrame f = new MyGameFrame(); f.launchFrame(); } private Image offScreenImage = null; public void update(Graphics g) { if(offScreenImage == null) offScreenImage = this.createImage(Constant.GAME_WIDTH,Constant.GAME_HEIGHT);//窗口的宽度和高度 Graphics gOff = offScreenImage.getGraphics(); paint(gOff); g.drawImage(offScreenImage, 0, 0, null); } }
在网上找到安装包安装不上呢,网上攻略建议修改名字,我修改了名字也是一样的报错。
需要老师共享一下Mysql_python-1.2.3-cp27-none-win_amd64.whl这个文件,谢谢!
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637