Tag: multithreading

Java中volatile和synchronized的区别

我想知道区别声明一个variables为volatile并总是访问Java中的synchronized(this)块(尤其是J2ME)中的variables? 根据这篇文章http://www.javamex.com/tutorials/synchronization_volatile.shtml有很多可以说,有很多的差异,但也有一些相似之处。 我对这条信息特别感兴趣: … 访问一个volatilevariables永远不会有阻塞的可能性:我们只做过一个简单的读或写操作,所以与synchronized块不同,我们永远不会锁住任何锁; 因为访问一个volatilevariables永远不会拥有一个锁,所以它不适合我们想要读取更新 – 写入为primefaces操作的情况(除非我们准备“错过更新”); 他们是什么意思阅读更新写 ? 不写也是一个更新,或者他们只是意味着更新是依赖于读取信息的写入? 最重要的是,何时声明variablesvolatile比通过synchronized访问variables更合适? 对依赖于input的variables使用volatile是一个好主意吗? 例如,有一个variables叫render ,通过渲染循环读取并通过按键事件设置?

Linux中每个进程的最大线程数?

在Linux下,一个进程可以创build的最大线程数是多less? (如果可能)如何修改这个值?

C#事件和线程安全

我经常听到/阅读以下build议: 在检查一个事件之前,一定要先制作一个事件的副本,然后将其null 。 这将消除线程潜在的问题,在检查null的地方和发生事件的地方,事件变为null 。 // Copy the event delegate before checking/calling EventHandler copy = TheEvent; if (copy != null) copy(this, EventArgs.Empty); // Call any handlers on the copied list 更新 :我从阅读优化思想,这可能也需要事件成员变动,但Jon Skeet在他的答案中指出,CLR不会优化副本。 但同时,为了这个问题发生,另一个线程必须做这样的事情: // Better delist from event – don't want our handler called from now on: otherObject.TheEvent -= OnTheEvent; // Good, now we […]

Android:在一个线程中吐司

如何显示来自线程的Toast消息?

你能解释STA和MTA吗?

你能用你自己的话来解释STA和MTA吗? 另外,什么是公寓线程,只涉及到COM? 如果是这样,为什么?

处理器VS AsyncTask与线程

我对Android中的Handlers , AsyncTask和Threads之间的区别有些困惑。 我已经阅读了很多博客和问题在这里stackoverflow。 Handler是后台线程,提供您与用户界面进行通信。 例如更新进度条应该通过Handler来完成。 使用处理程序,您具有MessagingQueues的优势,所以如果您想要安排消息或更新多个UI元素或具有重复任务。 AsyncTask是相似的,事实上它们使用Handler ,但不会在UI线程中运行,所以它对于获取数据很有用,比如获取Web服务。 稍后,您可以与UI进行交互。 但是Thread不能和UI交互,提供更多的“基本”线程,而且你会错过AsyncTask所有抽象。 不过,我想有一个套接字连接运行在一个服务。 这应该运行在一个处理程序或线程,甚至是一个AsyncTask ? UI交互不是必须的。 它在我使用的性能方面有所不同吗? 同时文件已经大大改善。

“同步”是什么意思?

我有一些关于synchronized关键字的用法和重要性的问题。 synchronized关键字的意义是什么? 什么时候应该synchronized方法? 这是什么意思编程和逻辑?

在multithreading系统中使用静态java.sql.Connection实例是否安全?

我正在Tomcat上运行一个Web应用程序。 我有一个类处理所有的数据库查询。 这个类包含Connection对象和返回查询结果的方法。 这是连接对象: private static Connection conn = null; 它只有一个实例(单例)。 另外,我有执行查询的方法,比如在db中search用户: public static ResultSet searchUser(String user, String pass) throws SQLException 此方法使用静态Connection对象。 我的问题是,我使用静态Connection对象线程安全吗? 或者当很多用户会调用searchUser方法时会引起问题?

获取当前在Java中运行的所有线程列表

有什么办法可以获得当前JVM中所有正在运行的线程的列表(包括未由我的类启动的线程)? 是否也可以获得列表中的所有线程的线程和类对象? 我希望能够通过代码来做到这一点。

服务vs IntentService

有人可以告诉我一个可以用一个Service无法完成的IntentService (反之亦然)可以完成的事情的例子吗? 我也相信一个IntentService运行在另一个线程中,一个Service不运行。 所以,据我所知,在自己的线程中启动一个服务就像启动一个IntentService 。 不是吗? 如果有人能帮我解决我的两个问题,我将不胜感激。