小编Ume*_*ooq的帖子

计数和二进制信号量之间的区别

Counting和二进制信号量有什么区别.

我在某处看到的是,两者都可以控制已请求资源的N个进程.两者都采取了自由状态.

二元信号量和计数信号量可以保护多少资源是否有任何限制?

两者都只允许一个进程一次使用一个资源......

还有其他区别吗?上述属性是否正确?

operating-system semaphore

29
推荐指数
2
解决办法
8万
查看次数

更改RecyclerView gridlayout中的列数

我正在尝试根据显示大小更改回收器视图(网格布局)中显示的列数.但是我无法找到实现它的正确方法.目前我正在使用treeViewObserver根据屏幕大小的变化(在定向期间)更改列数.因此,如果应用程序以纵向模式打开,列数(在手机上)它决定为一个,看起来不错,但当应用程序直接以横向模式打开时,此方法不起作用,其中网格中有单个拉出的卡片显示在屏幕上.

这里recList是RecyclerView&glm是RecyclerView中使用的GridLayoutManager

    viewWidth = recList.getMeasuredWidth();

    cardViewWidthZZ = recList.getChildAt(0).getMeasuredWidth();

    if (oldWidth == 0) {
        oldWidth = cardViewWidthZZ;
    }

    if (oldWidth <= 0)
        return;

    int newSpanCount = (int) Math.floor(viewWidth / (oldWidth / 1.3f));
    if (newSpanCount <= 0)
        newSpanCount = 1;
    glm.setSpanCount(newSpanCount);
    glm.requestLayout();
Run Code Online (Sandbox Code Playgroud)

最好的祝福

android gridlayoutmanager

16
推荐指数
2
解决办法
2万
查看次数

创造无体活动

目前我正在尝试创建一个可以在屏幕上移动的活动,换句话说,此活动可以浮动在屏幕上.我知道我遗漏了应该添加的东西来实现这个功能.

我该怎么做才能实现可以在屏幕上的任何位置移动的浮动活动?

java android android-activity

8
推荐指数
1
解决办法
3386
查看次数

在 GRPC 中拦截/记录请求和响应

我正在使用 GRPC 开发一个聊天应用程序,其中服务器从客户端接收信息并将其发送回所有连接到它的客户端。为此,我使用了Saturnism 的 聊天示例作为参考。我复制了代码,代码编译并运行,但服务器应该从未收到来自客户端的任何请求。

我的问题是:

  1. 有没有办法在 GRPC 中启用 Verbos 服务器端和客户端登录,以查看进出哪些请求和响应以及哪些可能失败?
  2. 我正在为服务器和客户端使用以下代码。以下代码中可能缺少/错误的内容导致客户端和服务器之间没有通信。

文库服务器.java

public class WingokuServer {
    public static void main(String[] args) throws IOException, InterruptedException {
        Server server = ServerBuilder.forPort(8091)
                .intercept(recordRequestHeadersInterceptor())
                .addService(new WingokuServiceImpl())
                .build();

        System.out.println("Starting server...");
        server.start();
        System.out.println("Server started!");
        server.awaitTermination();
    }
Run Code Online (Sandbox Code Playgroud)

WinokuServerSideService实现:

public class WingokuServiceImpl extends WingokuServiceGrpc.WingokuServiceImplBase {
    private static Set<StreamObserver<Response>> observers =
            Collections.newSetFromMap(new ConcurrentHashMap<>());

    public WingokuServiceImpl() {
        System.out.println("WingokuServiceImp");
    }

    @Override
    public StreamObserver<Request> messages(StreamObserver<Response> responseObserver) {
        System.out.println("messages");
        observers.add(responseObserver);
        return new StreamObserver<Request>() {
            @Override
            public void onNext(Request request) { …
Run Code Online (Sandbox Code Playgroud)

java android server grpc grpc-java

7
推荐指数
3
解决办法
1万
查看次数

Qt错误:无法打开输出文件调试

今天我正在调试我的程序,突然因电源故障,我的电脑异常关机.现在,当我编译该程序时,它给了我两个错误.

:-1: error: cannot open output file debug\Myprogram.exe: Invalid argument
:-1: error: collect2: ld returned 1 exit status

我清理了程序,重建了它.冉qmake.关闭编译器并重新启动以编译程序,首先运行qmake,然后调试但毫无价值.该程序没有编译.我是初学者,对这些问题知之甚少,所以请坚持这个问题.:).我该如何解决呢?

c++ qt

5
推荐指数
1
解决办法
7002
查看次数

android:layout_height 不适用于 CardView

我正在使用 GridLayoutManager 在 RecyclerView 中使用 CardViews。我面临的问题是,我在 xml 或 java 中为卡片视图指定的高度,它不会由 CardView 强制执行。看起来CardView 的子视图累积高度变成了 CardView 的高度。这种行为考虑到它是在其子视图上强制执行的父布局参数的事实。

我错过了什么?难道我做错了什么?

<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    android:id="@+id/cardView"
    android:layout_width="@dimen/card_view_width"
    android:layout_height="0dp"
    android:layout_marginBottom="6dp"
    android:elevation="10dp"
    android:orientation="horizontal"
    card_view:cardCornerRadius="2dp"

    >

<ImageView
 android:layout_width="@dimen/card_view_width"
    android:layout_height="10dp"
></ImageView>

</android.support.v7.widget.CardView>
Run Code Online (Sandbox Code Playgroud)

在这种情况下,卡片视图的高度为 0dp,但仍然是布局设计器预览,当应用程序在设备上运行时,卡片的大小为 10dp。

此致

android android-cardview

5
推荐指数
1
解决办法
7375
查看次数

在QmessageBox中显示图像

如何在消息框中显示图像.我试过了

about.setIcon(":/pics/goku3.jpg");
Run Code Online (Sandbox Code Playgroud)

但它给了我错误.我知道我可以使用内置的盒子.这是显示此框的完整代码.

void MainWindow::on_actionUmer_s_Program_triggered()
{
    QMessageBox about;

    about.setText("Umer's Program");
    about.setInformativeText("Copyright ; 2012 Umer Software Inc.\nI wrote this program     for fun.\n);
    about.setStandardButtons(QMessageBox::Ok);
    about.setIcon(":/pics/goku3.jpg");   // here is the error
    about.setDefaultButton(QMessageBox::Ok);
    about.show();
    about.exec();
}
Run Code Online (Sandbox Code Playgroud)

还请告诉我如何设置该图像的大小.

c++ qt messagebox

4
推荐指数
1
解决办法
8975
查看次数

覆盖Home Button的功能

在Android中,我已经能够非常轻松地覆盖后退按钮的功能,但对于我的应用程序,我需要覆盖home button.例如Activity A,当用户按下主页按钮时,用户就在activity B is launched.我试过以下但是失败了.

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {

    if(keyCode == KeyEvent.KEYCODE_HOME)
    {
        startActivity(new Intent(this, ActivityB.class));

        return true;
    }
    return super.onKeyDown(keyCode, event);
}
Run Code Online (Sandbox Code Playgroud)

我确信它可以完成,因为Nova Launcher当用户打开home screen和他时presses the home button,启动器为用户提供list of home screens跳转.我需要同样的功能.如何实现这一目标.

问候

java android home-button

2
推荐指数
1
解决办法
6508
查看次数

通过 id AngularJS 设置焦点

单击+按钮后,焦点将转移到 HTML 中的另一个输入字段。我想将焦点保留在当前输入字段上,除非用户单击另一个输入字段。这时我想将焦点移动到单击的输入字段。

<div layout="row" layout-align="center center">
    <md-input-container  class="md-block" flex="50">
        <input required id="circleTimeWordListEditText" type="text" placeholder="Words List" ng-model="circleTime.word"/>

        <div ng-messages="$error">
            <div ng-message="required">This is required.</div>
        </div>
    </md-input-container>
</div>

<div layout="row" layout-align="center center">
    <md-button class="md-raised md-primary" type="submit"
               ng-click="circleTime.onAddButtonClicked()">+
    </md-button>
</div>
Run Code Online (Sandbox Code Playgroud)

目前我正在这样做:

document.getElementById('circleTimeWordListEditText').focus();
Run Code Online (Sandbox Code Playgroud)

我也尝试过这个,但它给了我 NOSEL 错误。

angular.element('circleTimeWordListEditText').focus();
Run Code Online (Sandbox Code Playgroud)

我也尝试过这个解决方案:

mainApp.factory('focus', function($timeout, $window) {
    return function(id) {
        // timeout makes sure that it is invoked after any other event has been triggered.
        // e.g. click events that need to run before the focus or …
Run Code Online (Sandbox Code Playgroud)

html javascript jquery angularjs angular-material

2
推荐指数
1
解决办法
1万
查看次数

为什么在本地进程之间传递指针时会导致分段错误?

我从服务器传递一个指针数组到客户端.但是在客户端,当我拒绝接收到的数组时,我会得到分段错误.服务器和客户端都是操作系统的本地服务器.我认为我在指针中犯了一些错误并违反了一些指针规则.

这是代码:

Server.c

struct WinGoku goku,windows,gates;

struct WinGoku *array[3];
array[0] = &goku;
array[1] = &windows;
array[2] = &gates;

send(conSocket, array, sizeof(&array), 0);
Run Code Online (Sandbox Code Playgroud)

Client.c

struct WinGoku **array;

int rec =  recv(mySocket, array, 4, 0);

printf("bytes Recieved %d\n", rec);

int i;
for(i = 0; i<3;i++)
{
    printf("%s\n",array[i]->test);
}
Run Code Online (Sandbox Code Playgroud)

struct WinGoku仅包含char[50]我正在复制数据的地方strcpy.

发送和接收不返回-1,因此可以正确发送和接收数据.

我在做什么错?

c pointers network-programming segmentation-fault

1
推荐指数
2
解决办法
333
查看次数

自定义筛选器运算符RxJava

我正试图拥抱RxJava的荣耀并将其集成到我的应用程序中.我已经编写了以下代码来添加漫画,其累积成本不超过定义的预算.为实现这一目标,我编写了2个实现.

  1. Observable.create()不鼓励的用途主要是因为订阅和背压的复杂性
  2. 使用RxAndroid lib中已有的运算符.

如果暂时将Subscription和Backpressure处理放在一边,我希望得到关于哪些实现在性能,内存消耗和简单性方面更好的反馈Observable.create()

第一次实施:

Observable<Integer> filterObservable = Observable.create(new ObservableOnSubscribe<Integer>() {
    @Override
    public void subscribe(ObservableEmitter<Integer> e) throws Exception {
        Timber.d("filterComicsAccordingToBudget():subscribe");
        int pageCountOfComicsWithInBudget = 0;
        double totalCost = 0.0;
        for(MarvelComic comic : getMarvelComicsList()) {
            totalCost += Double.valueOf(comic.getPrice());
            Timber.d("totalCost: %s budget: %s priceOfComic: %s", totalCost, budget, comic.getPrice());
            if(totalCost > budget) {
                break;
            }
            pageCountOfComicsWithInBudget += Integer.valueOf(comic.getPageCount());
            Timber.d("pageCount: %s price: %s comicName: %s totalPages: %s", comic.getPageCount(), comic.getPrice(), comic.getTitle(), pageCountOfComicsWithInBudget);
            e.onNext(pageCountOfComicsWithInBudget);
        }
        e.onComplete();
    }
});

filterObservable.subscribeOn(Schedulers.computation())
    .observeOn(AndroidSchedulers.mainThread())
    .subscribe(new Observer<Integer>() { …
Run Code Online (Sandbox Code Playgroud)

java android rx-android reactive rx-java2

1
推荐指数
1
解决办法
181
查看次数

变量Java中的引用(地址)存储

如何在Java中将一个对象或变量的地址存储在另一个对象中.就像我们在C++中一样

int a =&b; // b也是int

如果我想通过Java中的引用将引用类型对象传递给任何方法,我怎么能这样做,默认情况下它们是按值传递的.

java eclipse object

0
推荐指数
1
解决办法
209
查看次数